diff --git a/.azure-pipelines-preproduction/package.json b/.azure-pipelines-preproduction/package.json index 06f6d448d064..c21610ca5bc0 100644 --- a/.azure-pipelines-preproduction/package.json +++ b/.azure-pipelines-preproduction/package.json @@ -35,7 +35,7 @@ }, "scripts": { "test": "tsc && mocha -t 500000 --reporter min", - "spellcheck": "cspell \"specification/**/*.json\"", + "spellcheck": "ts-node ./scripts/spellcheck.ts", "tsc": "tsc", "multiapi": "ts-node ./scripts/multiapi.ts" } diff --git a/.azure-pipelines/SwaggerToSDK.yml b/.azure-pipelines/SwaggerToSDK.yml index 1b460d95141b..10c37492cf05 100644 --- a/.azure-pipelines/SwaggerToSDK.yml +++ b/.azure-pipelines/SwaggerToSDK.yml @@ -1,6 +1,6 @@ jobs: - job: "SDK" - timeoutInMinutes: 120 + timeoutInMinutes: 180 strategy: matrix: java: @@ -9,9 +9,6 @@ jobs: javascript: AZURE_SDK_REPO: azure-sdk-for-js AZURE_SDK_PARAMS: '' - node: - AZURE_SDK_REPO: azure-sdk-for-node - AZURE_SDK_PARAMS: '' python: AZURE_SDK_REPO: azure-sdk-for-python AZURE_SDK_PARAMS: '' @@ -25,4 +22,4 @@ jobs: steps: - script: echo $(NODE_OPTIONS) - script: "scripts/swagger-to-sdk.sh Azure/$(AZURE_SDK_REPO) -v $(AZURE_SDK_PARAMS)" - displayName: "Swagger to SDK script" \ No newline at end of file + displayName: "Swagger to SDK script" diff --git a/.github/reviewer.yml b/.github/reviewer.yml new file mode 100644 index 000000000000..0fd114e380a7 --- /dev/null +++ b/.github/reviewer.yml @@ -0,0 +1,15 @@ +# This file is openapi-email-bot to store reviewer email address. +--- +- group: + name: default + users: + - githubID: ruowan + email: ruowan@microsoft.com + - githubID: raych1 + email: raychen@microsoft.com + - githubID: MyronFanQiu + email: fanqiu@microsoft.com + - githubID: yungezz + email: yungez@microsoft.com + - githubID: lirenhe + email: Renhe.Li@microsoft.com diff --git a/.github/sla.yml b/.github/sla.yml new file mode 100644 index 000000000000..1fcec5d02411 --- /dev/null +++ b/.github/sla.yml @@ -0,0 +1,25 @@ +--- +- scheduleTask: + action: sendEmailToAssignee + args: + ignoredLabels: + - WaitForARMFeedback + - DoNotMerge + - WaitingForAzureAPIBoard + limit: 48h + message: '

Dear Swagger reviewer,

Please response to the PR ${PR_URL}. The PR isn''t updated in 48 hours.



Quick info. Best regards,
Azure Management Experience

' + subject: "Action Required: Please respond to PR ${PR_URL}" + description: "None initial response in 48 hours" + name: no-initial-response +- scheduleTask: + action: sendEmailToAssignee + args: + ignoredLabels: + - WaitForARMFeedback + - DoNotMerge + - WaitingForAzureAPIBoard + limit: 5d + message: '

Dear Swagger reviewer,

Please response to the PR ${PR_URL}. The PR isn''t updated in 5 days.



Quick info. Best regards,
Azure Management Experience

' + subject: "Action Required: Please respond to PR ${PR_URL}" + description: "None update in PR in 5 days" + name: no-update-in-5d diff --git a/CODEOWNERS b/CODEOWNERS index 752f00fb91f6..72b40ee95cb0 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -14,7 +14,7 @@ /specification/consumption/ @kjeur @panda-wang /specification/containerinstance/ @samkreter /specification/containerregistry/ @djyou -/specification/containerservice/ @mboersma +/specification/containerservice/ @yangl900 /specification/cosmos-db/ @dmakwana /specification/customer-insights/ @tjlvtao /specification/datafactory/ @zhangyd2015 @@ -43,7 +43,7 @@ /specification/mobileengagement/ @pshrosbree /specification/monitor/ @gucalder /specification/mysql/ @qingqingyuan -/specification/network/ @MikhailTryakhov +/specification/network/ @MikhailTryakhov @number213 /specification/notificationhubs/ @amolr @smithab /specification/operationalinsights/ @sw47 /specification/operationsmanagement/ @dashimi16 diff --git a/custom-words.txt b/custom-words.txt index fad3038ed8e5..0300290deb34 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -496,6 +496,7 @@ featurized Featurizer feedbacktype FHIR +filegroup filepath fileserver fileservers @@ -1219,6 +1220,7 @@ scalesets scanability SCMS SCOM +scopemap SCSV sdks searchindex @@ -1487,6 +1489,7 @@ Unprovisions Unpublish Unregistering Unregisters +unrestorable unsubstituted untagged Untracked diff --git a/package.json b/package.json index f8038ca00de7..33f4829beb8f 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "scripts": { "postinstall": "scripts/switch-to-preproduction.sh", "test": "tsc && mocha -t 500000 --reporter min", - "spellcheck": "cspell \"specification/**/*.json\"", + "spellcheck": "ts-node ./scripts/spellcheck.ts", "tsc": "tsc", "multiapi": "ts-node ./scripts/multiapi.ts" } diff --git a/scripts/spellcheck.ts b/scripts/spellcheck.ts new file mode 100644 index 000000000000..17c411f3e115 --- /dev/null +++ b/scripts/spellcheck.ts @@ -0,0 +1,68 @@ +import { devOps, cli, childProcess } from '@azure/avocado'; +import { ExecOptions } from 'child_process'; + +const logToAzureDevops = (msg: string, type: string) => { + const lines = msg.split('\n'); + for (const line of lines) { + console.log(`##vso[task.logissue type=${type}]${line}`); + } +} + +const logError = (msg: string) => logToAzureDevops(msg, 'error'); +const logWarn = (msg: string) => logToAzureDevops(msg, 'warning'); + +const verboseExec = async (commandLine: string, options: ExecOptions = {}) => { + console.log(commandLine); + let result: any = {}; + try { + result = await childProcess.exec(commandLine, options); + } catch (e) { + result = e; + } + + if (!result.code) { + return 0; + } + + if (result.stdout) { + logError(result.stdout); + } + if (result.stderr) { + console.error(result.stderr); + } + return result.code; +} + +const main = async () => { + const config = cli.defaultConfig(); + const pr = await devOps.createPullRequestProperties(config); + if (pr === undefined) { + logWarn("Not in CI environment. Run against all the spec json."); + return verboseExec(`cspell "specification/**/*.json"`); + } + + const changedJsonFiles = await pr.structuralDiff() + .filter(filePath => filePath.endsWith('.json') && filePath.startsWith('specification/')) + .toArray(); + if (changedJsonFiles.length === 0) { + logWarn("No changed spec json file"); + return 0; + } + + let retCode = 0; + for (const jsonFile of changedJsonFiles) { + const code = await verboseExec(`cspell ${jsonFile}`); + if (code !== 0) { + retCode = code; + } + } + + return retCode; +} + +main().then(retCode => { + if (retCode !== 0) { + logError('Please fix the error or add words to ./custom-words.txt'); + } + process.exit(retCode); +}); diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json index b89d61772bcd..9214633dd52d 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json @@ -850,10 +850,6 @@ "openid": { "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", "description": "OpenID Connect Authentication Settings" - }, - "subscriptionKeyRequired": { - "type": "boolean", - "description": "Specifies whether subscription key is required during call to this API, true - API is included into closed products only, false - API is included into open products alone, null - there is a mix of products." } }, "description": "API Authentication Settings." diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json index 7977d3c055a6..f0c71e749ecb 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json @@ -497,6 +497,57 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/listKeyValue": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists a configuration store key-value.", + "operationId": "ConfigurationStores_ListKeyValue", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "listKeyValueParameters", + "in": "body", + "description": "The parameters for retrieving a key-value.", + "required": true, + "schema": { + "$ref": "#/definitions/ListKeyValueParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/KeyValue" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListKeyValue": { + "$ref": "./examples/ConfigurationStoresListKeyValue.json" + } + } + } } }, "definitions": { @@ -703,6 +754,73 @@ } } }, + "ListKeyValueParameters": { + "description": "The parameters used to list a configuration store key-value", + "required": [ + "key" + ], + "type": "object", + "properties": { + "key": { + "description": "The key to retrieve.", + "type": "string" + }, + "label": { + "description": "The label of the key.", + "type": "string" + } + } + }, + "KeyValue": { + "description": "The result of a request to retrieve a key-value from the specified configuration store.", + "type": "object", + "properties": { + "key": { + "description": "The primary identifier of a key-value.\r\nThe key is used in unison with the label to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "A value used to group key-values.\r\nThe label is used in unison with the key to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of the key-value.", + "type": "string", + "readOnly": true + }, + "contentType": { + "description": "The content type of the key-value's value.\r\nProviding a proper content-type can enable transformations of values when they are retrieved by applications.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "An ETag indicating the state of a key-value within a configuration store.", + "type": "string", + "readOnly": true + }, + "lastModified": { + "format": "date-time", + "description": "The last time a modifying operation was performed on the given key-value.", + "type": "string", + "readOnly": true + }, + "locked": { + "description": "A value indicating whether the key-value is locked.\r\nA locked key-value may not be modified until it is unlocked.", + "type": "boolean", + "readOnly": true + }, + "tags": { + "description": "A dictionary of tags that can help identify what a key-value may be applicable for.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, "OperationDefinitionListResult": { "description": "The result of a request to list configuration store operations.", "type": "object", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/examples/ConfigurationStoresListKeyValue.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/examples/ConfigurationStoresListKeyValue.json new file mode 100644 index 000000000000..bfd846a9076c --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-02-01-preview/examples/ConfigurationStoresListKeyValue.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "fayeh", + "api-version": "2019-02-01-preview", + "listKeyValueParameters": { + "key": "MaxRequests", + "label": "dev" + } + }, + "responses": { + "200": { + "body": { + "key": "MaxRequests", + "label": "dev", + "value": "100", + "contentType": "", + "eTag": "4f6dd610dd5e4deebc7fbaef685fb903", + "lastModified": "2017-12-05T02:41:26+00:00", + "locked": false, + "tags": { + "t1": "value1", + "t2": "value2" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/readme.md b/specification/appconfiguration/resource-manager/readme.md index b61dcadf6862..89ddb6cf259a 100644 --- a/specification/appconfiguration/resource-manager/readme.md +++ b/specification/appconfiguration/resource-manager/readme.md @@ -91,6 +91,10 @@ directive: from: appconfiguration.json where: $.definitions.ApiKey.properties.readOnly reason: We did consider using an enum instead but found it to not be helpful. + - suppress: EnumInsteadOfBoolean + from: appconfiguration.json + where: $.definitions.KeyValue.properties.locked + reason: This is data plane level information proxied through the RP and cannot be changed. ``` ## Multi-API/Profile support for AutoRest v3 generators diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json index 146734fa1fe1..4531ca4f30e2 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json @@ -246,7 +246,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { "post": { - "description": "Purges data in an Application Insights component by a set of user-defined filters.", + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", "operationId": "Components_Purge", "parameters": [ { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json index b2bccdc11c53..d4394fc0e12b 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsCreate.json @@ -5,12 +5,10 @@ "resourceGroupName": "my-resource-group", "resourceName": "my-component", "InsightProperties": { - "name": "my-component", "location": "South Central US", "kind": "web", "properties": { "Application_Type": "web", - "ApplicationId": "my-component", "Flow_Type": "Bluefield", "Request_Source": "rest" } diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json index 3e51ad298c20..47733560cf56 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/examples/ComponentsUpdate.json @@ -5,7 +5,6 @@ "resourceGroupName": "my-resource-group", "resourceName": "my-component", "InsightProperties": { - "name": "my-component", "location": "South Central US", "kind": "web", "tags": { diff --git a/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json b/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json index f3a702a4c694..7af1f73bd6b6 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json +++ b/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json @@ -64,7 +64,7 @@ "required": true, "type": "string", "format": "uuid", - "description": "The the DSC configuration Id." + "description": "The DSC configuration Id." }, { "name": "parameters", diff --git a/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscConfiguration.json b/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscConfiguration.json index fd1bffd10c39..dc2438efafe3 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscConfiguration.json +++ b/specification/automation/resource-manager/Microsoft.Automation/stable/2015-10-31/dscConfiguration.json @@ -371,7 +371,7 @@ "in": "query", "required": false, "type": "integer", - "description": "The the number of rows to take." + "description": "The number of rows to take." }, { "name": "$inlinecount", diff --git a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json index f2e8a02b466a..70093d084045 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json +++ b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json @@ -64,7 +64,7 @@ "in": "path", "required": true, "type": "string", - "description": "The the DSC configuration Id." + "description": "The DSC configuration Id." }, { "name": "parameters", @@ -123,7 +123,7 @@ "in": "path", "required": true, "type": "string", - "description": "The the DSC configuration Id." + "description": "The DSC configuration Id." }, { "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" diff --git a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNode.json b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNode.json index 36ef0d397840..b6c4fc644358 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNode.json +++ b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNode.json @@ -359,7 +359,7 @@ "in": "query", "required": false, "type": "integer", - "description": "The the number of rows to take." + "description": "The number of rows to take." }, { "name": "$inlinecount", diff --git a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json index d447569dee3c..34f8fb0c8f59 100644 --- a/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json +++ b/specification/automation/resource-manager/Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json @@ -251,7 +251,7 @@ "in": "query", "required": false, "type": "integer", - "description": "The the number of rows to take." + "description": "The number of rows to take." }, { "name": "$inlinecount", diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json index ce3208514607..550b4395dffc 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json @@ -49,7 +49,7 @@ "200": { "description": "OK -- The list of acquisitions has been returned.", "schema": { - "$ref": "acquisitions.json#/definitions/AcquisitionList" + "$ref": "#/definitions/AcquisitionList" } }, "404": { @@ -93,7 +93,7 @@ }, "status": { "description": "The status of the page BLOB acquisition.", - "$ref": "acquisitions.json#/definitions/AcquisitionStatus", + "$ref": "#/definitions/AcquisitionStatus", "readOnly": true }, "susbcriptionid": { @@ -130,7 +130,7 @@ "properties": { "description": "The properties of the page blob acquisition.", "x-ms-client-flatten": true, - "$ref": "acquisitions.json#/definitions/AcquisitionProperties", + "$ref": "#/definitions/AcquisitionProperties", "readOnly": true } }, @@ -144,7 +144,7 @@ "description": "The list of page BLOB acquisitions.", "type": "array", "items": { - "$ref": "acquisitions.json#/definitions/Acquisition" + "$ref": "#/definitions/Acquisition" } } }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json index d67de4a5ba00..519ef48fa783 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json @@ -49,7 +49,7 @@ "200": { "description": "OK -- The BLOB service has been returned.", "schema": { - "$ref": "blobServices.json#/definitions/BlobService" + "$ref": "#/definitions/BlobService" } }, "404": { @@ -184,7 +184,7 @@ "type": "object", "allOf": [ { - "$ref": "blobServices.json#/definitions/BlobServiceWritableSettings" + "$ref": "#/definitions/BlobServiceWritableSettings" } ] }, @@ -194,7 +194,7 @@ "properties": { "settings": { "x-ms-client-flatten": true, - "$ref": "blobServices.json#/definitions/BlobServiceSettings", + "$ref": "#/definitions/BlobServiceSettings", "description": "Blob service settings.", "readOnly": true } @@ -212,7 +212,7 @@ "properties": { "description": "Blob service properties.", "x-ms-client-flatten": true, - "$ref": "blobServices.json#/definitions/BlobServiceProperties", + "$ref": "#/definitions/BlobServiceProperties", "readOnly": true } }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/containers.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/containers.json index f22dc6856f83..2e39b9862f23 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/containers.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/containers.json @@ -49,13 +49,13 @@ "200": { "description": "OK -- Operation has been accepted and processed", "schema": { - "$ref": "containers.json#/definitions/MigrationResult" + "$ref": "#/definitions/MigrationResult" } }, "202": { "description": "ACCEPTED - Operation has been accepted will be processed asynchronously", "schema": { - "$ref": "containers.json#/definitions/MigrationResult" + "$ref": "#/definitions/MigrationResult" } } }, @@ -93,7 +93,7 @@ "200": { "description": "OK -- Operation has been accepted and processed", "schema": { - "$ref": "containers.json#/definitions/MigrationResult" + "$ref": "#/definitions/MigrationResult" } } } @@ -128,20 +128,20 @@ "$ref": "storage.json#/parameters/ApiVersionParameter" }, { - "$ref": "containers.json#/parameters/MigrationIntentParameter" + "$ref": "#/parameters/MigrationIntentParameter" }, { - "$ref": "containers.json#/parameters/MaxCountParameter" + "$ref": "#/parameters/MaxCountParameter" }, { - "$ref": "containers.json#/parameters/StartIndexParameter" + "$ref": "#/parameters/StartIndexParameter" } ], "responses": { "200": { "description": "OK -- The list of containers has been returned.", "schema": { - "$ref": "containers.json#/definitions/ContainerList" + "$ref": "#/definitions/ContainerList" } }, "404": { @@ -224,20 +224,20 @@ "$ref": "storage.json#/parameters/ApiVersionParameter" }, { - "$ref": "containers.json#/parameters/MigrationParameterParameter" + "$ref": "#/parameters/MigrationParameterParameter" } ], "responses": { "200": { "description": "OK -- Container has been migrated", "schema": { - "$ref": "containers.json#/definitions/MigrationResult" + "$ref": "#/definitions/MigrationResult" } }, "202": { "description": "ACCEPTED -- Operation accepted and will be performed asynchronously", "schema": { - "$ref": "containers.json#/definitions/MigrationResult" + "$ref": "#/definitions/MigrationResult" } } }, @@ -293,7 +293,7 @@ "description": "List of containers.", "type": "array", "items": { - "$ref": "containers.json#/definitions/Container" + "$ref": "#/definitions/Container" } }, "MigrationResult": { @@ -327,7 +327,7 @@ }, "migrationStatus": { "description": "The migration status.", - "$ref": "containers.json#/definitions/MigrationState", + "$ref": "#/definitions/MigrationState", "readOnly": true }, "subEntitiesCompleted": { @@ -423,7 +423,7 @@ "in": "body", "required": true, "schema": { - "$ref": "containers.json#/definitions/MigrationParameters" + "$ref": "#/definitions/MigrationParameters" }, "x-ms-parameter-location": "method" } diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/farms.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/farms.json index e1f0db459024..587563b84a40 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/farms.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/farms.json @@ -47,7 +47,7 @@ "in": "body", "required": true, "schema": { - "$ref": "farms.json#/definitions/FarmCreationProperties" + "$ref": "#/definitions/FarmCreationProperties" } } ], @@ -55,7 +55,7 @@ "200": { "description": "OK -- The new storage farm has been created.", "schema": { - "$ref": "farms.json#/definitions/Farm" + "$ref": "#/definitions/Farm" } } } @@ -89,7 +89,7 @@ "200": { "description": "OK -- The farm has been returned.", "schema": { - "$ref": "farms.json#/definitions/Farm" + "$ref": "#/definitions/Farm" } }, "404": { @@ -127,7 +127,7 @@ "in": "body", "required": true, "schema": { - "$ref": "farms.json#/definitions/Farm" + "$ref": "#/definitions/Farm" } } ], @@ -135,7 +135,7 @@ "200": { "description": "OK -- The properties and settings of storage farm have been updated.", "schema": { - "$ref": "farms.json#/definitions/Farm" + "$ref": "#/definitions/Farm" } } } @@ -252,7 +252,7 @@ "200": { "description": "OK -- The list of storage farms has been returned.", "schema": { - "$ref": "farms.json#/definitions/FarmList" + "$ref": "#/definitions/FarmList" } } }, @@ -350,7 +350,7 @@ "description": "List of storage farms.", "type": "array", "items": { - "$ref": "farms.json#/definitions/Farm" + "$ref": "#/definitions/Farm" } }, "nextLink": { @@ -367,7 +367,7 @@ "properties": { "description": "Storage farm properties.", "x-ms-client-flatten": true, - "$ref": "farms.json#/definitions/SettingAccessString" + "$ref": "#/definitions/SettingAccessString" } }, "allOf": [ @@ -383,8 +383,7 @@ "properties": { "description": "Storage farm properties.", "x-ms-client-flatten": true, - "$ref": "farms.json#/definitions/FarmProperties", - "readOnly": true + "$ref": "#/definitions/FarmProperties" } }, "allOf": [ @@ -400,245 +399,204 @@ "settingsPollingIntervalInSecond": { "description": "The polling interval (in second).", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "retentionPeriodForDeletedStorageAccountsInDays": { "description": "The retention period (in days) for deleted storage account.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "hostStyleHttpPort": { "description": "Host style HTTP port.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "hostStyleHttpsPort": { "description": "Host style HTTPs port.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "corsAllowedOriginsList": { "description": "The list of allowed origins.", - "type": "string", - "readOnly": true + "type": "string" }, "dataCenterUriHostSuffixes": { "description": "The suffixes of URI of hosts in data center.", - "type": "string", - "readOnly": true + "type": "string" }, "bandwidthThrottleIsEnabled": { "description": "Switch of bandwidth throttle enablement.", - "type": "boolean", - "readOnly": true + "type": "boolean" }, "usageCollectionIntervalInSeconds": { "description": "Interval (in seconds) of storage usage collection.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "feedbackRefreshIntervalInSeconds": { "description": "Interval (in seconds) of feedback refresh.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "numberOfAccountsToSync": { "description": "Number of accounts to sync.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "defaultThrottleProbabilityDecayIntervalInSeconds": { "description": "Interval (in seconds) of default throttle probability decay.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "gracePeriodForFullThrottlingInRefreshIntervals": { "description": "Grace period for full throttling in refresh intervals.", "type": "integer", - "format": "int32", - "readOnly": true + "format": "int32" }, "gracePeriodMaxThrottleProbability": { "description": "Maximum probability of throttle in grace period.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallRequestThresholdInTps": { "description": "Overall request threshold (in TPS).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultRequestThresholdInTps": { "description": "Default request threshold (in TPS).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumRequestThresholdInTps": { "description": "Minimum request threshold (in TPS).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForTps": { "description": "Tolerance factor for TPS.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallIngressThresholdInGbps": { "description": "Overall ingress threshold (in Gbps)", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultIngressThresholdInGbps": { "description": "Default ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumIngressThresholdInGbps": { "description": "Minimum ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForIngress": { "description": "Tolerance factor for ingress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallIntranetIngressThresholdInGbps": { "description": "Overall Intranet ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultIntranetIngressThresholdInGbps": { "description": "Default Intranet ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumIntranetIngressThresholdInGbps": { "description": "Minimum Intranet ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForIntranetIngress": { "description": "Tolerance factor for Intranet ingress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallEgressThresholdInGbps": { "description": "Overall egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultEgressThresholdInGbps": { "description": "Default egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumEgressThresholdInGbps": { "description": "Minimum egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForEgress": { "description": "Tolerance factor for egress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallIntranetEgressThresholdInGbps": { "description": "Overall Intranet egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultIntranetEgressThresholdInGbps": { "description": "Default Intranet egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumIntranetEgressThresholdInGbps": { "description": "Minimum Intranet egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForIntranetEgress": { "description": "Tolerance factor for Intranet egress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallTotalIngressThresholdInGbps": { "description": "Overall total ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultTotalIngressThresholdInGbps": { "description": "Default total ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumTotalIngressThresholdInGbps": { "description": "Minimum total ingress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForTotalIngress": { "description": "Tolerance factor for total ingress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "overallTotalEgressThresholdInGbps": { "description": "Overall total egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "defaultTotalEgressThresholdInGbps": { "description": "Default total egress threshold (in Gbps).", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "minimumTotalEgressThresholdInGbps": { "description": "Minimum total egress threshold (in Gbp", "type": "number", - "format": "float", - "readOnly": true + "format": "float" }, "toleranceFactorForTotalEgress": { "description": "Tolerance factor for total egress.", "type": "number", - "format": "float", - "readOnly": true + "format": "float" } } }, @@ -648,24 +606,20 @@ "properties": { "farmId": { "description": "Farm identifier.", - "type": "string", - "readOnly": true + "type": "string" }, "version": { "description": "Resource version.", - "type": "string", - "readOnly": true + "type": "string" }, "settingsStore": { "description": "The settings of storage farm.", - "type": "string", - "readOnly": true + "type": "string" }, "settings": { "description": "The properties of storage farm.", "x-ms-client-flatten": true, - "$ref": "farms.json#/definitions/FarmSettings", - "readOnly": true + "$ref": "#/definitions/FarmSettings" } } }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json index 3935ea3649f0..a8c68ca4c60f 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json @@ -49,7 +49,7 @@ "200": { "description": "OK -- Queue service has been returned.", "schema": { - "$ref": "queueServices.json#/definitions/QueueService" + "$ref": "#/definitions/QueueService" } }, "404": { @@ -174,7 +174,7 @@ "properties": { "description": "Queue service properties.", "x-ms-client-flatten": true, - "$ref": "queueServices.json#/definitions/QueueServiceProperties", + "$ref": "#/definitions/QueueServiceProperties", "readOnly": true } }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json index 65c0aa61ba7e..f047fdcf2d4d 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json @@ -39,17 +39,17 @@ "$ref": "storage.json#/parameters/ApiVersionParameter" }, { - "$ref": "quotas.json#/parameters/QuotaNameParameter" + "$ref": "#/parameters/QuotaNameParameter" }, { - "$ref": "quotas.json#/parameters/StorgeQuotaParameters" + "$ref": "#/parameters/StorgeQuotaParameters" } ], "responses": { "200": { "description": "OK -- The storage quota has been created or updated.", "schema": { - "$ref": "quotas.json#/definitions/StorageQuota" + "$ref": "#/definitions/StorageQuota" } }, "404": { @@ -79,7 +79,7 @@ "$ref": "storage.json#/parameters/LocationParameter" }, { - "$ref": "quotas.json#/parameters/QuotaNameParameter" + "$ref": "#/parameters/QuotaNameParameter" } ], "responses": { @@ -113,14 +113,14 @@ "$ref": "storage.json#/parameters/LocationParameter" }, { - "$ref": "quotas.json#/parameters/QuotaNameParameter" + "$ref": "#/parameters/QuotaNameParameter" } ], "responses": { "200": { "description": "OK -- The storage quota has been returned.", "schema": { - "$ref": "quotas.json#/definitions/StorageQuota" + "$ref": "#/definitions/StorageQuota" } }, "404": { @@ -156,7 +156,7 @@ "200": { "description": "OK -- The list of storage quotas has been returned.", "schema": { - "$ref": "quotas.json#/definitions/StorageQuotaList" + "$ref": "#/definitions/StorageQuotaList" } }, "404": { @@ -177,7 +177,7 @@ "properties": { "description": "Storage quota properties.", "x-ms-client-flatten": true, - "$ref": "quotas.json#/definitions/StorageQuotaProperties" + "$ref": "#/definitions/StorageQuotaProperties" } }, "allOf": [ @@ -212,7 +212,7 @@ "description": "List of storage quotas.", "type": "array", "items": { - "$ref": "quotas.json#/definitions/StorageQuota" + "$ref": "#/definitions/StorageQuota" } }, "nextLink": { @@ -237,7 +237,7 @@ "in": "body", "required": true, "schema": { - "$ref": "quotas.json#/definitions/StorageQuota" + "$ref": "#/definitions/StorageQuota" }, "x-ms-parameter-location": "method" } diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/shares.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/shares.json index 3dc5fe6e34e3..4d978bc695cd 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/shares.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/shares.json @@ -46,7 +46,7 @@ "200": { "description": "OK -- The list of storage shares has been returned.", "schema": { - "$ref": "shares.json#/definitions/ShareList" + "$ref": "#/definitions/ShareList" } }, "404": { @@ -181,7 +181,7 @@ "200": { "description": "OK -- The storage share has been returned.", "schema": { - "$ref": "shares.json#/definitions/Share" + "$ref": "#/definitions/Share" } }, "404": { @@ -199,7 +199,7 @@ "properties": { "description": "Storage share properties.", "x-ms-client-flatten": true, - "$ref": "shares.json#/definitions/ShareProperties", + "$ref": "#/definitions/ShareProperties", "readOnly": true } }, @@ -213,7 +213,7 @@ "description": "List of storage shares.", "type": "array", "items": { - "$ref": "shares.json#/definitions/Share" + "$ref": "#/definitions/Share" } }, "ShareProperties": { diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storage.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storage.json index 377f487a6066..087898639205 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storage.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storage.json @@ -30,14 +30,14 @@ "operationId": "Operations_List", "parameters": [ { - "$ref": "storage.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "OK -- The list of operations has been returned.", "schema": { - "$ref": "storage.json#/definitions/OperationList" + "$ref": "#/definitions/OperationList" } } }, @@ -137,7 +137,7 @@ }, "allOf": [ { - "$ref": "storage.json#/definitions/WritableSettings" + "$ref": "#/definitions/WritableSettings" } ] }, @@ -207,24 +207,24 @@ "properties": { "name": { "description": "Metric name.", - "$ref": "storage.json#/definitions/LocalizableString", + "$ref": "#/definitions/LocalizableString", "readOnly": true }, "unit": { "description": "Metric unit.", - "$ref": "storage.json#/definitions/MetricUnit", + "$ref": "#/definitions/MetricUnit", "readOnly": true }, "primaryAggregationType": { "description": "Aggregation type of metric.", - "$ref": "storage.json#/definitions/AggregateType", + "$ref": "#/definitions/AggregateType", "readOnly": true }, "metricAvailabilities": { "description": "Metric availabilities.", "type": "array", "items": { - "$ref": "storage.json#/definitions/MetricAvailability" + "$ref": "#/definitions/MetricAvailability" }, "readOnly": true } @@ -236,12 +236,12 @@ "properties": { "name": { "description": "Metric Name.", - "$ref": "storage.json#/definitions/LocalizableString", + "$ref": "#/definitions/LocalizableString", "readOnly": true }, "metricUnit": { "description": "Metric Unit.", - "$ref": "storage.json#/definitions/MetricUnit", + "$ref": "#/definitions/MetricUnit", "readOnly": true }, "timeGrain": { @@ -265,7 +265,7 @@ "description": "List of metric values.", "type": "array", "items": { - "$ref": "storage.json#/definitions/MetricValue" + "$ref": "#/definitions/MetricValue" }, "readOnly": true } @@ -279,7 +279,7 @@ "description": "List of metric definitions.", "type": "array", "items": { - "$ref": "storage.json#/definitions/MetricDefinition" + "$ref": "#/definitions/MetricDefinition" }, "readOnly": true }, @@ -298,7 +298,7 @@ "description": "List of metrics.", "type": "array", "items": { - "$ref": "storage.json#/definitions/Metric" + "$ref": "#/definitions/Metric" }, "readOnly": true }, @@ -376,31 +376,26 @@ "properties": { "id": { "description": "Resource ID.", - "type": "string", - "readOnly": true + "type": "string" }, "name": { "description": "Resource Name.", - "type": "string", - "readOnly": true + "type": "string" }, "type": { "description": "Resource type.", - "type": "string", - "readOnly": true + "type": "string" }, "location": { "description": "Resource location.", - "type": "string", - "readOnly": true + "type": "string" }, "tags": { "description": "Resource tags.", "type": "object", "additionalProperties": { "type": "string" - }, - "readOnly": true + } } }, "x-ms-azure-resource": true @@ -414,7 +409,7 @@ }, "healthStatus": { "description": "Health status of storage service.", - "$ref": "storage.json#/definitions/HealthStatus" + "$ref": "#/definitions/HealthStatus" } } }, @@ -428,7 +423,7 @@ }, "display": { "description": "Contains the localized display information for this particular operation / action.", - "$ref": "storage.json#/definitions/Display", + "$ref": "#/definitions/Display", "readOnly": true } } @@ -465,7 +460,7 @@ "description": "List of operations", "type": "array", "items": { - "$ref": "storage.json#/definitions/Operation" + "$ref": "#/definitions/Operation" } }, "nextLink": { diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json index e3d8477ad1e2..7563995ee609 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json @@ -42,14 +42,14 @@ "$ref": "storage.json#/parameters/ApiVersionParameter" }, { - "$ref": "storageaccounts.json#/parameters/SummaryParameter" + "$ref": "#/parameters/SummaryParameter" } ], "responses": { "200": { "description": "OK -- The list of storage accounts has been returned.", "schema": { - "$ref": "storageaccounts.json#/definitions/StorageAccountList" + "$ref": "#/definitions/StorageAccountList" } }, "404": { @@ -84,7 +84,7 @@ "$ref": "storage.json#/parameters/FarmIdParameter" }, { - "$ref": "storageaccounts.json#/parameters/AccountIdParameter" + "$ref": "#/parameters/AccountIdParameter" }, { "$ref": "storage.json#/parameters/ApiVersionParameter" @@ -94,7 +94,7 @@ "200": { "description": "OK -- The storage account has been returned.", "schema": { - "$ref": "storageaccounts.json#/definitions/StorageAccount" + "$ref": "#/definitions/StorageAccount" } }, "404": { @@ -124,7 +124,7 @@ "$ref": "storage.json#/parameters/FarmIdParameter" }, { - "$ref": "storageaccounts.json#/parameters/AccountIdParameter" + "$ref": "#/parameters/AccountIdParameter" }, { "$ref": "storage.json#/parameters/ApiVersionParameter" @@ -255,12 +255,12 @@ }, "accountType": { "description": "Storage account type.", - "$ref": "storageaccounts.json#/definitions/StorageAccountType", + "$ref": "#/definitions/StorageAccountType", "readOnly": true }, "provisioningState": { "description": "The provisioning state of storage account.", - "$ref": "storageaccounts.json#/definitions/StorageAccountState", + "$ref": "#/definitions/StorageAccountState", "readOnly": true }, "primaryEndpoints": { @@ -287,7 +287,7 @@ }, "statusOfPrimary": { "description": "The status of primary location of storage account.", - "$ref": "storageaccounts.json#/definitions/LocationStatus", + "$ref": "#/definitions/LocationStatus", "readOnly": true }, "tenantSubscriptionId": { @@ -307,7 +307,7 @@ }, "currentOperation": { "description": "Current operation being performed on Storage Account", - "$ref": "storageaccounts.json#/definitions/StorageAccountOperation", + "$ref": "#/definitions/StorageAccountOperation", "readOnly": true }, "customDomain": { @@ -328,7 +328,7 @@ "readOnly": true }, "accountStatus": { - "$ref": "storageaccounts.json#/definitions/StorageAccountStatus", + "$ref": "#/definitions/StorageAccountStatus", "description": "The status of storage account." }, "recoveredTime": { @@ -345,7 +345,7 @@ }, "permissions": { "description": "The permissions on the storage account.", - "$ref": "storageaccounts.json#/definitions/WacAccountPermissions", + "$ref": "#/definitions/WacAccountPermissions", "readOnly": true }, "accountId": { @@ -355,7 +355,7 @@ }, "wacInternalState": { "description": "The internal state of storage account in WAC.", - "$ref": "storageaccounts.json#/definitions/WacAccountStates", + "$ref": "#/definitions/WacAccountStates", "readOnly": true }, "resourceAdminApiVersion": { @@ -372,7 +372,7 @@ "properties": { "description": "Properties of the storage account.", "x-ms-client-flatten": true, - "$ref": "storageaccounts.json#/definitions/StorageAccountProperties", + "$ref": "#/definitions/StorageAccountProperties", "readOnly": true } }, @@ -390,7 +390,7 @@ "description": "List of storage accounts.", "type": "array", "items": { - "$ref": "storageaccounts.json#/definitions/StorageAccount" + "$ref": "#/definitions/StorageAccount" }, "readOnly": true }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json index 7533fa942df5..044c0874eea1 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json @@ -49,7 +49,7 @@ "200": { "description": "OK -- Table service has been returned.", "schema": { - "$ref": "tableServices.json#/definitions/TableService" + "$ref": "#/definitions/TableService" } }, "404": { @@ -157,7 +157,7 @@ "properties": { "description": "Table service properties.", "x-ms-client-flatten": true, - "$ref": "tableServices.json#/definitions/TableServiceProperties", + "$ref": "#/definitions/TableServiceProperties", "readOnly": true } }, diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json new file mode 100644 index 000000000000..0adabf8037e1 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json @@ -0,0 +1,162 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-08-preview", + "title": "StorageManagementClient", + "description": "The Admin Storage Management Client." + }, + "host": "adminmanagement.local.azurestack.external", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/acquisitions": { + "get": { + "x-ms-examples": { + "Returns a list of page BLOB acquisitions.": { + "$ref": "./examples/Acquisitions/List.json" + } + }, + "tags": [ + "Acquisitions" + ], + "operationId": "Acquisitions_List", + "description": "Returns a list of BLOB acquisitions.", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The list of acquisitions has been returned.", + "schema": { + "$ref": "#/definitions/AcquisitionList" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AcquisitionStatus": { + "description": "The status of page BLOB acquisition.", + "type": "string", + "enum": [ + "Unknown", + "NotAcquired", + "Pending", + "Success", + "Failed" + ], + "x-ms-enum": { + "name": "AcquisitionStatus", + "modelAsString": true + } + }, + "Acquisition": { + "description": "The acquisition of the page BLOB.", + "type": "object", + "properties": { + "susbcriptionid": { + "description": "ID of the subscription associated with the page BLOB.", + "type": "string", + "readOnly": true + }, + "storageaccount": { + "description": "The storage account that holds the page BLOB.", + "type": "string", + "readOnly": true + }, + "container": { + "description": "The container associated with the page BLOB.", + "type": "string", + "readOnly": true + }, + "blob": { + "description": "The name of the page BLOB.", + "type": "string", + "readOnly": true + }, + "acquisitionid": { + "description": "The ID of page BLOB acquisition.", + "type": "string", + "readOnly": true + }, + "filePath": { + "description": "The file path of the page BLOB file on storage cluster.", + "type": "string", + "readOnly": true + }, + "filePathUnc": { + "description": "The file path unc of the page BLOB file on storage cluster.", + "type": "string", + "readOnly": true + }, + "maximumblobsize": { + "description": "The maximum size of the page BLOB.", + "type": "integer", + "format": "int64", + "readOnly": true + }, + "status": { + "description": "The status of the page BLOB acquisition.", + "$ref": "#/definitions/AcquisitionStatus", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "AcquisitionList": { + "description": "The list of page BLOB acquisitions.", + "type": "object", + "properties": { + "value": { + "description": "List of acquisitions.", + "type": "array", + "items": { + "$ref": "#/definitions/Acquisition" + }, + "readOnly": true + } + } + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Acquisitions/List.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Acquisitions/List.json new file mode 100644 index 000000000000..9d721d044e28 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Acquisitions/List.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": { + "body": { + "value":[] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json new file mode 100644 index 000000000000..05aede9aac06 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/CreateOrUpdate.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/CreateOrUpdate.json new file mode 100644 index 000000000000..985e7cbec6f1 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/CreateOrUpdate.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "quotaName": "TestCreateQuota", + "api-version": "2019-08-08-preview", + "quotaObject": { + "properties": { + "numberOfStorageAccounts": 10000, + "capacityInGb": 1000 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/providers/Microsoft.Storage.Admin/locations/local/quotas/TestCreateQuota", + "name": "local/TestCreateQuota", + "type": "Microsoft.Storage.Admin/locations/quotas", + "location": "local", + "properties": { + "numberOfStorageAccounts": 10000, + "capacityInGb": 1000 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Delete.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Delete.json new file mode 100644 index 000000000000..9fc783a03a41 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "quotaName": "TestCreateQuota", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Get.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Get.json new file mode 100644 index 000000000000..afdaa6c12646 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "quotaName": "TestCreateQuota", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/providers/Microsoft.Storage.Admin/locations/local/quotas/TestCreateQuota", + "name": "local/TestCreateQuota", + "type": "Microsoft.Storage.Admin/locations/quotas", + "location": "local", + "properties": { + "numberOfStorageAccounts": 20, + "capacityInGb": 2048 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/List.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/List.json new file mode 100644 index 000000000000..34af15800cc0 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Quotas/List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/providers/Microsoft.Storage.Admin/locations/local/quotas/TestCreateQuota", + "name": "local/TestCreateQuota", + "type": "Microsoft.Storage.Admin/locations/quotas", + "location": "local", + "properties": { + "numberOfStorageAccounts": 20, + "capacityInGb": 2048 + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Get.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Get.json new file mode 100644 index 000000000000..7128a5c46bf8 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": { + "body": { + "properties": + { + "retentionPeriodForDeletedStorageAccountsInDays": 2 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Update.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Update.json new file mode 100644 index 000000000000..42d51727b2f9 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Settings/Update.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview", + "settingsObject": { + "properties": { + "retentionPeriodForDeletedStorageAccountsInDays": 2 + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "retentionPeriodForDeletedStorageAccountsInDays": 2 + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Get.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Get.json new file mode 100644 index 000000000000..ddf05209bef8 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "accountId": "f93c9df9e7af487fbda484a9201d9c18", + "api-version": "2019-08-08-preview", + "summary": "false" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/f93c9df9e7af487fbda484a9201d9c18", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "f93c9df9e7af487fbda484a9201d9c18", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://authprod.blob.local.azurestack.external/", + "queue": "https://authprod.queue.local.azurestack.external/", + "table": "https://authprod.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/authprod", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "authprod", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "f93c9df9e7af487fbda484a9201d9c18", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T01:56:30.983" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/List.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/List.json new file mode 100644 index 000000000000..ed522d0ea736 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/List.json @@ -0,0 +1,224 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview", + "summary": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/0180624c67694706a4066782d83057a5", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "0180624c67694706a4066782d83057a5", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://adminkvlclproddata004.blob.local.azurestack.external/", + "queue": "https://adminkvlclproddata004.queue.local.azurestack.external/", + "table": "https://adminkvlclproddata004.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local.adminkeyvault/providers/Microsoft.Storage/storageaccounts/adminkvlclproddata004", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "adminkvlclproddata004", + "tenantResourceGroupName": "system.local.adminkeyvault", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "0180624c67694706a4066782d83057a5", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:27.41" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/04106a84393f4a12ab8efdbc0a69bb65", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "04106a84393f4a12ab8efdbc0a69bb65", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://adminkvlclproddata005.blob.local.azurestack.external/", + "queue": "https://adminkvlclproddata005.queue.local.azurestack.external/", + "table": "https://adminkvlclproddata005.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local.adminkeyvault/providers/Microsoft.Storage/storageaccounts/adminkvlclproddata005", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "adminkvlclproddata005", + "tenantResourceGroupName": "system.local.adminkeyvault", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "04106a84393f4a12ab8efdbc0a69bb65", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:27.847" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/06e296e00b284f5cb5708dfabd6ad74c", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "06e296e00b284f5cb5708dfabd6ad74c", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://wasphealthaccount.blob.local.azurestack.external/", + "queue": "https://wasphealthaccount.queue.local.azurestack.external/", + "table": "https://wasphealthaccount.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/wasphealthaccount", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "wasphealthaccount", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "06e296e00b284f5cb5708dfabd6ad74c", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:12.47" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/0a6b4f6b1de14cc08aa1fefadcc481eb", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "0a6b4f6b1de14cc08aa1fefadcc481eb", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://frphealthaccount.blob.local.azurestack.external/", + "queue": "https://frphealthaccount.queue.local.azurestack.external/", + "table": "https://frphealthaccount.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/frphealthaccount", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "frphealthaccount", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "0a6b4f6b1de14cc08aa1fefadcc481eb", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:02.527" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/0d724e3f75004e48948c1bfa0b4a964a", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "0d724e3f75004e48948c1bfa0b4a964a", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://systemgallery.blob.local.azurestack.external/", + "queue": "https://systemgallery.queue.local.azurestack.external/", + "table": "https://systemgallery.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/systemgallery", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "systemgallery", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "0d724e3f75004e48948c1bfa0b4a964a", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T01:56:29.467" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/0dda0879146341178603ba151d7da010", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "0dda0879146341178603ba151d7da010", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://nrpeventsaccount.blob.local.azurestack.external/", + "queue": "https://nrpeventsaccount.queue.local.azurestack.external/", + "table": "https://nrpeventsaccount.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/nrpeventsaccount", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "nrpeventsaccount", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "0dda0879146341178603ba151d7da010", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:23.84" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/15612011f6094654abcb6031a4394ef5", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "15612011f6094654abcb6031a4394ef5", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://kvrphealthaccount.blob.local.azurestack.external/", + "queue": "https://kvrphealthaccount.queue.local.azurestack.external/", + "table": "https://kvrphealthaccount.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/kvrphealthaccount", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "kvrphealthaccount", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "15612011f6094654abcb6031a4394ef5", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:36.193" + } + }, + { + "id": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/System.local/providers/Microsoft.Storage.Admin/storageaccounts/17829fa81c154239ad8a6fae05f44793", + "type": "Microsoft.Storage.Admin/storageaccounts", + "name": "17829fa81c154239ad8a6fae05f44793", + "location": "local", + "properties": { + "provisioningState": "Succeeded", + "primaryEndpoints": { + "blob": "https://srpusageaccount.blob.local.azurestack.external/", + "queue": "https://srpusageaccount.queue.local.azurestack.external/", + "table": "https://srpusageaccount.table.local.azurestack.external/" + }, + "primaryLocation": "local", + "statusOfPrimary": "Available", + "tenantViewId": "/subscriptions/9ad61516-995c-4873-a21f-7e44904f0ed2/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/srpusageaccount", + "tenantSubscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "tenantStorageAccountName": "srpusageaccount", + "tenantResourceGroupName": "system.local", + "accountStatus": "Active", + "permissions": "Full", + "accountId": "17829fa81c154239ad8a6fae05f44793", + "wacInternalState": "Active", + "accountType": "Standard_LRS", + "creationTime": "2018-01-17T02:10:15.38" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/ReclaimStorageCapacity.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/ReclaimStorageCapacity.json new file mode 100644 index 000000000000..5cf745510f13 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/ReclaimStorageCapacity.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "api-version": "2019-08-08-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json new file mode 100644 index 000000000000..c4a30491f691 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/StorageAccounts/Undelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "9ad61516-995c-4873-a21f-7e44904f0ed2", + "location": "local", + "accountId": "f93c9df9e7af487fbda484a9201d9c18", + "api-version": "2019-08-08-preview", + "summary": "false" + }, + "responses": { + "200": { + "body": { + "accountId": "80d458ce4ecd47888b54aaa277800748" + } + }, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json new file mode 100644 index 000000000000..7155df97cde7 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json @@ -0,0 +1,268 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-08-preview", + "title": "StorageManagementClient", + "description": "The Admin Storage Management Client." + }, + "host": "adminmanagement.local.azurestack.external", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/quotas/{quotaName}": { + "put": { + "x-ms-examples": { + "Create or update an existing storage quota.": { + "$ref": "./examples/Quotas/CreateOrUpdate.json" + } + }, + "tags": [ + "StorageQuotas" + ], + "description": "Create or update an existing storage quota.", + "operationId": "StorageQuotas_CreateOrUpdate", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/QuotaNameParameter" + }, + { + "$ref": "#/parameters/StorageQuotaParameters" + } + ], + "responses": { + "200": { + "description": "OK -- The storage quota has been created or updated.", + "schema": { + "$ref": "#/definitions/StorageQuota" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an existing storage quota.": { + "$ref": "./examples/Quotas/Delete.json" + } + }, + "tags": [ + "StorageQuotas" + ], + "description": "Delete an existing quota", + "operationId": "StorageQuotas_Delete", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/QuotaNameParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The storage quota has been deleted." + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "x-ms-examples": { + "Returns the specified storage quota.": { + "$ref": "./examples/Quotas/Get.json" + } + }, + "tags": [ + "StorageQuotas" + ], + "description": "Returns the specified storage quota.", + "operationId": "StorageQuotas_Get", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/QuotaNameParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The storage quota has been returned.", + "schema": { + "$ref": "#/definitions/StorageQuota" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/quotas": { + "get": { + "x-ms-examples": { + "Returns a list of storage quotas at the given location.": { + "$ref": "./examples/Quotas/List.json" + } + }, + "tags": [ + "StorageQuotas" + ], + "description": "Returns a list of storage quotas at the given location.", + "operationId": "StorageQuotas_List", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The list of storage quotas has been returned.", + "schema": { + "$ref": "#/definitions/StorageQuotaList" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "StorageQuota": { + "description": "Storage quota.", + "type": "object", + "properties": { + "properties": { + "description": "Storage quota properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageQuotaProperties" + } + }, + "allOf": [ + { + "$ref": "storage.json#/definitions/Resource" + } + ] + }, + "StorageQuotaProperties": { + "description": "Storage quota properties.", + "type": "object", + "properties": { + "numberOfStorageAccounts": { + "description": "Total number of storage accounts.", + "type": "integer", + "format": "int32", + "default": 20 + }, + "capacityInGb": { + "description": "Maximum capacity (GB).", + "type": "integer", + "format": "int32", + "default": 500 + } + } + }, + "StorageQuotaList": { + "description": "Pageable list of storage quotas.", + "type": "object", + "properties": { + "value": { + "description": "List of storage quotas.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageQuota" + } + } + } + } + }, + "parameters": { + "QuotaNameParameter": { + "description": "The name of the storage quota.", + "name": "quotaName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "StorageQuotaParameters": { + "description": "The properties of quota being created or updated.", + "name": "quotaObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageQuota" + }, + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json new file mode 100644 index 000000000000..3f9431507cc3 --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json @@ -0,0 +1,154 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-08-preview", + "title": "StorageManagementClient", + "description": "The Admin Storage Management Client." + }, + "host": "adminmanagement.local.azurestack.external", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/settings": { + "put": { + "x-ms-examples": { + "Update srp settings.": { + "$ref": "./examples/Settings/Update.json" + } + }, + "tags": [ + "Settings" + ], + "description": "Update storage resource provider settings.", + "operationId": "StorageSettings_Update", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "description": "Parameters used to update storage resource provider settings", + "name": "settingsObject", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Settings" + } + } + ], + "responses": { + "200": { + "description": "OK -- The new storage resource provider setting is updated.", + "schema": { + "$ref": "#/definitions/Settings" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "x-ms-examples": { + "Returns the storage resource provider settings.": { + "$ref": "./examples/Settings/Get.json" + } + }, + "tags": [ + "Settings" + ], + "description": "Returns the storage resource provider settings.", + "operationId": "StorageSettings_Get", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The settings has been returned.", + "schema": { + "$ref": "#/definitions/Settings" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "SettingProperties": { + "description": "Properties of storage setting.", + "type": "object", + "properties": { + "retentionPeriodForDeletedStorageAccountsInDays": { + "description": "The number of days a deleted storage account is kept before being permanently deleted.", + "type": "integer", + "format": "int32" + } + } + }, + "Settings": { + "description": "Storage resource provider settings", + "type": "object", + "properties": { + "properties": { + "description": "Properties of the storage account.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SettingProperties", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "storage.json#/definitions/Resource" + } + ] + } + }, + "parameters": {}, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json new file mode 100644 index 000000000000..18e6d0c4e45d --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json @@ -0,0 +1,205 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-08-preview", + "title": "StorageManagementClient", + "description": "The Admin Storage Management Client." + }, + "host": "adminmanagement.local.azurestack.external", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Storage.Admin/operations": { + "get": { + "x-ms-examples": { + "Get the list of support rest operations.": { + "$ref": "./examples/Operations/List.json" + } + }, + "description": "Get the list of support rest operations.", + "tags": [ + "Commerce" + ], + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The list of operations has been returned.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Operation": { + "description": "Describes the supported REST operation.", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object. It should match the action name that appears in RBAC / the event service.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "Contains the localized display information for this particular operation / action.", + "$ref": "#/definitions/Display", + "readOnly": true + } + } + }, + "Display": { + "description": "Contains the localized display information for this particular operation / action.", + "properties": { + "provider": { + "description": "The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized friendly form of the resource type related to this action/operation – it should match the public documentation for the resource provider.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The localized friendly name for the operation, as it should be shown to the user.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The localized friendly description for the operation, as it should be shown to the user. It should be thorough, yet concise – it will be used in tool tips and detailed views.", + "type": "string", + "readOnly": true + } + } + }, + "OperationList": { + "description": "Pageable list of supported operations.", + "properties": { + "value": { + "description": "List of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "ErrorResponse": { + "description": "The error response for request which failed.", + "type": "object", + "properties": { + "code": { + "description": "The error description code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error description message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The error target description.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details information.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "Resource": { + "description": "Base resource object.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource Name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource Type.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource Location.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "ApiVersionParameter": { + "description": "REST Api Version.", + "name": "api-version", + "type": "string", + "in": "query", + "required": true + }, + "LocationParameter": { + "description": "Resource location.", + "name": "location", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "description": "Subscription Id.", + "name": "subscriptionId", + "type": "string", + "in": "path", + "required": true + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json new file mode 100644 index 000000000000..ddebe4a38cbd --- /dev/null +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json @@ -0,0 +1,569 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-08-preview", + "title": "StorageManagementClient", + "description": "The Admin Storage Management Client." + }, + "host": "adminmanagement.local.azurestack.external", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/storageaccounts": { + "get": { + "x-ms-examples": { + "Returns a list of storage accounts.": { + "$ref": "./examples/StorageAccounts/List.json" + } + }, + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_List", + "description": "Returns a list of storage accounts.", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/SummaryParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The list of storage accounts has been returned.", + "schema": { + "$ref": "#/definitions/StorageAccountList" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/storageaccounts/{accountId}": { + "get": { + "x-ms-examples": { + "Returns the requested storage account.": { + "$ref": "./examples/StorageAccounts/Get.json" + } + }, + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Get", + "description": "Returns the requested storage account.", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/AccountIdParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- The storage account has been returned.", + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/storageaccounts/{accountId}/undelete": { + "post": { + "x-ms-examples": { + "Undelete a deleted storage account.": { + "$ref": "./examples/StorageAccounts/Undelete.json" + } + }, + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Undelete", + "description": "Undelete a deleted storage account with new account name if the a new name is provided.", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/AccountIdParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/NewAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Undelete either has been performed or account was not deleted.", + "schema": { + "$ref": "#/definitions/UndeleteStorageAccount" + } + }, + "202": { + "description": "Accepted -- undelete operation trigged; operation will complete asynchronously." + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Storage.Admin/locations/{location}/reclaimStorageCapacity": { + "post": { + "x-ms-examples": { + "Start reclaim storage capacity on deleted storage objects.": { + "$ref": "./examples/StorageAccounts/ReclaimStorageCapacity.json" + } + }, + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_ReclaimStorageCapacity", + "description": "Start reclaim storage capacity on deleted storage objects.", + "parameters": [ + { + "$ref": "storage.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "storage.json#/parameters/LocationParameter" + }, + { + "$ref": "storage.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Reclaim storage capacity has completed." + }, + "202": { + "description": "Accepted -- reclaim storage capacity operation triggered; operation will complete asynchronously." + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "storage.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "StorageAccountState": { + "readOnly": true, + "description": "Storage account state.", + "type": "string", + "enum": [ + "Creating", + "Succeeded", + "Suspended" + ], + "x-ms-enum": { + "name": "StorageAccountState", + "modelAsString": true + } + }, + "StorageAccountType": { + "description": "Storage account type.", + "type": "string", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_ZRS", + "Standard_RAGRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + }, + "LocationStatus": { + "readOnly": true, + "type": "string", + "description": "Gets the status indicating whether the primary location of the storage account is available or unavailable.", + "enum": [ + "Available", + "Unavailable" + ], + "x-ms-enum": { + "name": "LocationStatus", + "modelAsString": true + } + }, + "StorageAccountStatus": { + "description": "The state of storage account in WAC.", + "type": "string", + "enum": [ + "Active", + "Deleted" + ], + "x-ms-enum": { + "name": "StorageAccountStatus", + "modelAsString": true + } + }, + "WacAccountPermissions": { + "description": "Current operation being performed on Storage Account", + "type": "string", + "enum": [ + "Empty", + "None", + "Read", + "Delete", + "Write", + "Full" + ], + "x-ms-enum": { + "name": "WacAccountPermissions", + "modelAsString": true + } + }, + "WacAccountStates": { + "description": "Current operation being performed on Storage Account", + "type": "string", + "enum": [ + "None", + "Active", + "Deleted", + "AboveQuota", + "Suspended", + "All", + "GcReadyState" + ], + "x-ms-enum": { + "name": "WacAccountStates", + "modelAsString": true + } + }, + "StorageEncryptionSetting": { + "description": "Storage Encryption setting", + "type": "object", + "properties": { + "enabled": { + "description": "Bool to indicate whether enabled or not.", + "type": "boolean", + "readOnly": true + }, + "lastEnabledTime": { + "description": "A rough estimate of the date/time when the encryption was last enabled by the user.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEncryptionServices": { + "description": "Services for which encryption setting is mentioned.", + "type": "object", + "properties": { + "blob": { + "description": "Blob service.", + "$ref": "#/definitions/StorageEncryptionSetting", + "readOnly": true + }, + "table": { + "description": "Table service.", + "$ref": "#/definitions/StorageEncryptionSetting", + "readOnly": true + }, + "queue": { + "description": "Queue service", + "$ref": "#/definitions/StorageEncryptionSetting", + "readOnly": true + } + } + }, + "EncryptionKeySource": { + "description": "Encryption Key Source", + "type": "string", + "enum": [ + "Microsoft.Storage" + ], + "x-ms-enum": { + "name": "EncryptionKeySource", + "modelAsString": true + } + }, + "StorageEncryption": { + "description": "Storage encryption setting", + "type": "object", + "properties": { + "services": { + "description": "Services for which encryption setting is mentioned", + "$ref": "#/definitions/StorageEncryptionServices", + "readOnly": true + }, + "keySource": { + "description": "Encryption keySource", + "$ref": "#/definitions/EncryptionKeySource", + "readOnly": true + } + } + }, + "StorageAccountProperties": { + "description": "Properties of a storage account.", + "type": "object", + "properties": { + "tenantViewId": { + "description": "Resource URI of storage account from tenant view.", + "type": "string", + "readOnly": true + }, + "accountType": { + "description": "Storage account type.", + "$ref": "#/definitions/StorageAccountType", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of storage account.", + "$ref": "#/definitions/StorageAccountState", + "readOnly": true + }, + "primaryEndpoints": { + "description": "The URLs that are used to perform a retrieval of a public BLOB, queue, or table object.", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + }, + "creationTime": { + "description": "The creation date and time of storage account in UTC.", + "type": "string", + "readOnly": true + }, + "alternateName": { + "description": "Alternative storage account name being used during undelete operation.", + "type": "string", + "readOnly": true + }, + "primaryLocation": { + "description": "The primary location for the storage account.", + "type": "string", + "readOnly": true + }, + "faultDomain": { + "description": "The fault domain for the storage account.", + "type": "string", + "readOnly": true + }, + "statusOfPrimary": { + "description": "The status of primary location of storage account.", + "$ref": "#/definitions/LocationStatus", + "readOnly": true + }, + "tenantSubscriptionId": { + "description": "Subscription ID of the subscription under which the storage account locates.", + "type": "string", + "readOnly": true + }, + "tenantStorageAccountName": { + "description": "Storage account name from tenant view.", + "type": "string", + "readOnly": true + }, + "tenantResourceGroupName": { + "description": "The name of resource group under which the storage account locates.", + "type": "string", + "readOnly": true + }, + "deletedTime": { + "description": "The date-time when the storage account was deleted.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "accountStatus": { + "$ref": "#/definitions/StorageAccountStatus", + "description": "The status of storage account." + }, + "permissions": { + "description": "The permissions on the storage account.", + "$ref": "#/definitions/WacAccountPermissions", + "readOnly": true + }, + "accountId": { + "description": "Internal storage account ID, which is not visible to tenant.", + "type": "string", + "readOnly": true + }, + "wacInternalState": { + "description": "The internal state of storage account in WAC.", + "$ref": "#/definitions/WacAccountStates", + "readOnly": true + }, + "encryption": { + "description": "The storage encryption setting", + "$ref": "#/definitions/StorageEncryption", + "readOnly": true + }, + "supportsHttpsTrafficOnly": { + "description": "Storage account supports https traffic only or not", + "type": "boolean", + "readOnly": true + } + } + }, + "StorageAccount": { + "description": "Properties of the storage account.", + "type": "object", + "properties": { + "properties": { + "description": "Properties of the storage account.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageAccountProperties", + "readOnly": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "storage.json#/definitions/Resource" + } + ] + }, + "StorageAccountList": { + "description": "Pageable list of storage accounts.", + "type": "object", + "properties": { + "value": { + "description": "List of storage accounts.", + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "readOnly": true + }, + "@odata.nextLink": { + "description": "URI to the next page.", + "type": "string", + "readOnly": true + } + } + }, + "UndeleteStorageAccount": { + "description": "Undelete storage account information.", + "type": "object", + "properties": { + "accountId": { + "description": "The internal wac id for storage account.", + "type": "string", + "readOnly": true + }, + "newAccountName": { + "description": "The new account name for the restored account if defined.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "AccountIdParameter": { + "description": "Internal storage account ID, which is not visible to tenant.", + "name": "accountId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "NewAccountNameParameter": { + "description": "New storage account name when doing undelete storage account operation.", + "name": "newAccountName", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SummaryParameter": { + "description": "Switch for whether summary or detailed information is returned.", + "name": "summary", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "description": "Filter string", + "name": "$filter", + "type": "string", + "in": "query", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/storage/readme.md b/specification/azsadmin/resource-manager/storage/readme.md index 41e4e0d1831e..ea224b5519a0 100644 --- a/specification/azsadmin/resource-manager/storage/readme.md +++ b/specification/azsadmin/resource-manager/storage/readme.md @@ -24,24 +24,36 @@ These are the global settings for the Storage API. title: StorageAdminClient description: Storage Admin Client openapi-type: arm -tag: package-2015-12-01 +tag: package-2019-08-08 ``` +### Tag: package-2019-08-08 + +These settings apply only when `--tag=package-2019-08-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08-08' +input-file: + - "Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json" + - "Microsoft.Storage.Admin/preview/2019-08-08/quotas.json" + - "Microsoft.Storage.Admin/preview/2019-08-08/settings.json" + - "Microsoft.Storage.Admin/preview/2019-08-08/storage.json" + - "Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json" +``` ### Tag: package-2015-12-01 These settings apply only when `--tag=package-2015-12-01` is specified on the command line. ``` yaml $(tag) == 'package-2015-12-01' input-file: + - "Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json" + - "Microsoft.Storage.Admin/preview/2015-12-01/quotas.json" - "Microsoft.Storage.Admin/preview/2015-12-01/storage.json" - "Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json" - "Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json" - "Microsoft.Storage.Admin/preview/2015-12-01/containers.json" - "Microsoft.Storage.Admin/preview/2015-12-01/farms.json" - "Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json" - - "Microsoft.Storage.Admin/preview/2015-12-01/quotas.json" - "Microsoft.Storage.Admin/preview/2015-12-01/shares.json" - - "Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json" - "Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json" ``` @@ -75,15 +87,20 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/settings.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/storage.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json + - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/storage.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/acquisitions.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/blobServices.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/containers.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/farms.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/queueServices.json - - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/quotas.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/shares.json - - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/storageaccounts.json - $(this-folder)/Microsoft.Storage.Admin/preview/2015-12-01/tableServices.json ``` diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2019-08-01/BatchManagement.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2019-08-01/BatchManagement.json index 82903df30683..a2fc026149b8 100644 --- a/specification/batch/resource-manager/Microsoft.Batch/stable/2019-08-01/BatchManagement.json +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2019-08-01/BatchManagement.json @@ -481,7 +481,7 @@ "$ref": "./examples/ApplicationPackageActivate.json" } }, - "description": "Activates the specified application package.", + "description": "Activates the specified application package. This should be done after the `ApplicationPackage` was created and uploaded. This needs to be done before an `ApplicationPackage` can be used on Pools or Tasks", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -730,7 +730,7 @@ "$ref": "./examples/ApplicationPackageCreate.json" } }, - "description": "Creates an application package record.", + "description": "Creates an application package record. The record contains the SAS where the package should be uploaded to. Once it is uploaded the `ApplicationPackage` needs to be activated using `ApplicationPackageActive` before it can be used.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index a2135901457b..dabd80c28418 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -2629,6 +2629,94 @@ } } } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default": { + "get": { + "tags": [ + "Policies" + ], + "operationId": "Policies_GetByCustomer", + "description": "The policy for a given billing account name and customer name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "x-ms-examples": { + "PolicyByCustomer": { + "$ref": "./examples/CustomerPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/customerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Policies" + ], + "operationId": "Policies_UpdateCustomer", + "description": "The operation to update a Customer policy.", + "x-ms-examples": { + "UpdateCustomer": { + "$ref": "./examples/UpdateCustomerPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/customerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CustomerPolicy" + }, + "description": "Parameters supplied to the update customer policy operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingProperty/default": { "get": { @@ -6452,6 +6540,39 @@ } } } + }, + "CustomerPolicy": { + "description": "The Customer's Policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomerPolicyProperties", + "title": "Customer Policy properties" + } + } + }, + "CustomerPolicyProperties": { + "description": "The properties of a Customer's policy.", + "properties": { + "viewCharges": { + "description": "Customer can view retail prices.", + "type": "string", + "enum": [ + "Allowed", + "NotAllowed" + ], + "x-ms-enum": { + "name": "ViewCharges", + "modelAsString": true + } + } + } }, "AvailableBalance": { "description": "Latest available balance on Monetary Credit PI.", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CustomerPolicy.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CustomerPolicy.json new file mode 100644 index 000000000000..c7560944a6e2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CustomerPolicy.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "billingAccountName": "{billingAccountName}", + "customerName": "{customerName}" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default", + "name": "default", + "type": "Microsoft.Billing/billingAccounts/customers/policies", + "properties": { + "viewCharges": "Allowed" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateCustomerPolicy.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateCustomerPolicy.json new file mode 100644 index 000000000000..8d96d102afda --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateCustomerPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "billingAccountName": "{billingAccountName}", + "customerName": "{customerName}", + "eTag": "\"1d34d012214127f\"", + "parameters": { + "properties": { + "viewCharges": "NotAllowed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default", + "name": "default", + "type": "Microsoft.Billing/billingAccounts/customers/policies", + "properties": { + "viewCharges": "NotAllowed" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index 05316f09283b..52a58cae05d2 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the Cdn API. title: CdnManagementClient description: Cdn Management Client openapi-type: arm -tag: package-2019-06 +tag: package-2019-04 ``` ### Tag: package-2019-06 diff --git a/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json index dc8cf6783896..65409726ccae 100644 --- a/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json +++ b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json @@ -26,7 +26,7 @@ "schemes": [ "https" ], - "basePath": "/localbusinesses/v7.0/search", + "basePath": "/bing", "produces": [ "application/json" ], @@ -43,7 +43,7 @@ } ], "paths": { - "/localbusinesses/v7.0/search": { + "/v7.0/localbusinesses/search": { "get": { "summary": "The Local Search API lets you send a search query to Bing and get back search results that include local businesses such as restaurants, hotels, retail stores, or other local businesses. The query can specify the name of the local business or it can ask for a list (for example, restaurants near me).", "operationId": "Local_Search", diff --git a/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json b/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json index b4944a90b19f..859eacfff02e 100644 --- a/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json +++ b/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json @@ -195,7 +195,7 @@ }, { "name": "Mode", - "in": "formData", + "in": "query", "description": "The type of spelling and grammar checks to perform. The following are the possible values (the values are case insensitive). The default is Proof. 1) Proof—Finds most spelling and grammar mistakes. 2) Spell—Finds most spelling mistakes but does not find some of the grammar errors that Proof catches (for example, capitalization and repeated words)", "required": false, "type": "string", @@ -210,21 +210,21 @@ }, { "name": "PreContextText", - "in": "formData", + "in": "query", "description": "A string that gives context to the text string. For example, the text string petal is valid. However, if you set preContextText to bike, the context changes and the text string becomes not valid. In this case, the API suggests that you change petal to pedal (as in bike pedal). This text is not checked for grammar or spelling errors. The combined length of the text string, preContextText string, and postContextText string may not exceed 10,000 characters. You may specify this parameter in the query string of a GET request or in the body of a POST request.", "required": false, "type": "string" }, { "name": "PostContextText", - "in": "formData", + "in": "query", "description": "A string that gives context to the text string. For example, the text string read is valid. However, if you set postContextText to carpet, the context changes and the text string becomes not valid. In this case, the API suggests that you change read to red (as in red carpet). This text is not checked for grammar or spelling errors. The combined length of the text string, preContextText string, and postContextText string may not exceed 10,000 characters. You may specify this parameter in the query string of a GET request or in the body of a POST request.", "required": false, "type": "string" }, { "name": "Text", - "in": "formData", + "in": "query", "description": "The text string to check for spelling and grammar errors. The combined length of the text string, preContextText string, and postContextText string may not exceed 10,000 characters. You may specify this parameter in the query string of a GET request or in the body of a POST request. Because of the query string length limit, you'll typically use a POST request unless you're checking only short strings.", "required": true, "type": "string" diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json index 25a999414e66..10a504ea525a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json @@ -24,12 +24,17 @@ }, "storageProfile": { "osDiskImage": { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}" + }, "hostCaching": "ReadOnly" }, "dataDiskImages": [ { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "source": + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, "lun": 1, "hostCaching": "None" } @@ -61,13 +66,17 @@ }, "storageProfile": { "osDiskImage": { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, "sizeInGB": 10, "hostCaching": "ReadOnly" }, "dataDiskImages": [ { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, "lun": 1, "sizeInGB": 10, "hostCaching": "None" @@ -102,13 +111,17 @@ }, "storageProfile": { "osDiskImage": { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, "sizeInGB": 10, "hostCaching": "ReadOnly" }, "dataDiskImages": [ { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, "lun": 1, "sizeInGB": 10, "hostCaching": "None" @@ -143,13 +156,17 @@ }, "storageProfile": { "osDiskImage": { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, "sizeInGB": 10, "hostCaching": "ReadOnly" }, "dataDiskImages": [ { - "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, "lun": 1, "sizeInGB": 10, "hostCaching": "None" diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md index b94f758031eb..3555b6551350 100644 --- a/specification/compute/resource-manager/readme.python.md +++ b/specification/compute/resource-manager/readme.python.md @@ -33,6 +33,17 @@ batch: - tag: package-compute-2015-06 ``` +### Tag: package-2019-07-01-only and python + +These settings apply only when `--tag=package-2019-07-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-07-01-only' && $(python) +python: + namespace: azure.mgmt.compute.v2019_07_01 + output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_07_01 +``` + ### Tag: package-2019-04-01-only and python These settings apply only when `--tag=package-2019-04-01-only --python` is specified on the command line. diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json index d6b9e854eb3e..6448536e23eb 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json @@ -137,7 +137,7 @@ "description": "The request was successful; the operation will complete asynchronously." }, "204": { - "description": "The scope map does not exist in the subscription." + "description": "The scopemap does not exist in the subscription." } }, "x-ms-examples": { @@ -688,7 +688,7 @@ ], "type": "string", "x-ms-enum": { - "name": "Status", + "name": "TokenStatus", "modelAsString": true } } @@ -748,7 +748,7 @@ "properties": { "creationTime": { "format": "date-time", - "description": "The password created datetime of the password.", + "description": "The creation datetime of the password.", "type": "string" }, "expiry": { diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json index b1f3a328b89f..15b7e026040c 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json @@ -5582,7 +5582,7 @@ "None", "Average", "Total", - "Minimimum", + "Minimum", "Maximum", "Last" ], diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json new file mode 100644 index 000000000000..cecf3b3d1235 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json @@ -0,0 +1,6119 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2019-08-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.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Patch", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Patches the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountPatchParameters" + }, + "description": "The tags parameter to patch for the current database account." + } + ], + "responses": { + "200": { + "description": "The properties of the database account were patched successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + } + ] + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRangeFilter": { + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.", + "$ref": "#/definitions/IPRangeFilter" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + } + } + }, + "DatabaseAccountPatchProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRangeFilter": { + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.", + "$ref": "#/definitions/IPRangeFilter" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + } + }, + "required": [ + "locations", + "databaseAccountOfferType" + ] + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountPatchParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountPatchProperties" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + }, + "required": [ + "throughput" + ] + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "Consistent", + "enum": [ + "Consistent", + "Lazy", + "None" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + }, + "IPRangeFilter": { + "type": "string", + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces." + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "Provider": { + "description": "Service provider: Microsoft.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list usage request." + }, + "Usage": { + "properties": { + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "name": { + "$ref": "#/definitions/MetricName", + "readOnly": true, + "description": "The name information for the metric." + }, + "quotaPeriod": { + "type": "string", + "readOnly": true, + "description": "The quota period used to summarize the usage values." + }, + "limit": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "MetricName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the metric." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The friendly name of the metric." + } + }, + "description": "A metric name." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "UnitType": { + "type": "string", + "readOnly": true, + "description": "The unit of the metric.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond", + "Milliseconds" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "UnitType" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2019-08-01." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of usages to return. The supported parameter is name.value (name of the metric, can have an or of multiple names)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..4edfd440123f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "id": "keyspaceName" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..4a8873badee1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..913aa9213f39 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..7e076a9ed3b5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "id": "keyspaceName" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..6575e0dc6fa0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..9b0c2b4f18ac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..55031406eaf4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..131851801243 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..d7c280325a93 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..3c5c486e7a78 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..e732ddcc4976 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..d5d1eb77721f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..3bdf5f342167 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2019-08-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "\/subscriptions\/subId\/resourceGroups\/rg1\/providers\/Microsoft.DocumentDB\/databaseAccounts\/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..c20efc3c223b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..3cb78e433943 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..8d8466102172 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..c5e67e1cc89f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..3dd68731a836 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..da6dcf634452 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..40ce869a85cf --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "GlobalDocumentDB", + "properties": { + "databaseAccountOfferType": "Standard", + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..284059db0daa --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..e971ad549140 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..84dc2aba507d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..fcea79dd152d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..b55ed88f43e6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "\/subscriptions\/subId\/resourceGroups\/rg1\/providers\/Microsoft.DocumentDB\/databaseAccounts\/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..7fc193a64d45 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..04be14ae540a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..596d8b9df880 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..4947086025bc --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..29894b0cca6f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..e464f39b37b5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..7971d0546250 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..6ba3b5f1ef1c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..ba3b6f902ced --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..f64ae55c957f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..b1e2102b6bc8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "updateParameters": { + "tags": { + "dept": "finance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..39325a0fd174 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..fa0b6a3df6de --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..a27df0e5f865 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2019-08-01", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "\/subscriptions\/subId\/resourceGroups\/rg1\/providers\/Microsoft.DocumentDB\/databaseAccounts\/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..74b227fcfc14 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..004ff0ea8653 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..e6172ea1ba7d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..8e975f441049 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..bb04140eab3b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..f664c1ca1de6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..a97f98b8a1a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..e3aa8db7023d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..a7a026f0df99 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..e07f7989124f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..37dc59a19be6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..58848564a518 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..39b9a7d1a53b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..12990bf1f79e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..51fe1f57deab --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..5aa2c2ac229a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..e97dc527ea55 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..866ec8bf9b49 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..56d92fe1cea9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..910237b6b9af --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..054c0c8a06e0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "updatedDatabaseName" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..8e975f441049 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..a2be091adc94 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..c26c84e9e400 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..8142d273a557 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..4e0820837fed --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..80490e6f0792 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..7b0a10fae68c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..db6bee56e954 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..de272aedbb6d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..ee9ae03b43a0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..8de35fad653c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..4e97f9e6d2ad --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..9cae1d332f38 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..84d8f4be6376 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..a635e39ba446 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..c6d1bbb3b00d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..60c7662a5877 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..520502b78f3e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..0410791fdefe --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..8e975f441049 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..46e06b47313a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls\/", + "_users": "users\/" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..17cde7a9fc66 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls\/", + "_users": "users\/" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..b965d1eb7f4d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..a2ee9fb5d209 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..016aaffbf69b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "id": "tableName" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..1353414e7615 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..ea9c4ba7f7f6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..caecd45cf3d2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "id": "tableName" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..f4a79e5b7d0e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..4760c2ecfc9a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true" + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/readme.md b/specification/cosmos-db/resource-manager/readme.md index 1bae2976fd2c..0ee2ce0b98e7 100644 --- a/specification/cosmos-db/resource-manager/readme.md +++ b/specification/cosmos-db/resource-manager/readme.md @@ -26,9 +26,24 @@ These are the global settings for the Cosmos-DB API. ``` yaml openapi-type: arm +``` + +``` yaml +tag: package-2019-08 +``` + +``` yaml tag: package-2015-04 ``` +### 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: +- Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json +``` ### Tag: package-2015-04 @@ -50,42 +65,6 @@ directive: from: cosmos-db.json where: $.definitions.DatabaseAccountCreateUpdateParameters reason: The DatabaseAccount request and response resources differ so the DatabaseAccountCreateUpdateParameters must only have a PUT operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.SqlDatabase - reason: The SqlDatabase doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.Container - reason: The Container doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.MongoDBDatabase - reason: The MongoDBDatabase doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.MongoDBCollection - reason: The MongoDBCollection doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.Table - reason: The Table doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.CassandraKeyspace - reason: The CassandraKeyspace doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.CassandraTable - reason: The CassandraTable doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.GremlinDatabase - reason: The GremlinDatabase doesn't support Patch operation - - suppress: TrackedResourcePatchOperation - from: cosmos-db.json - where: $.definitions.GremlinGraph - reason: The GremlinGraph doesn't support Patch operation - suppress: DefinitionsPropertiesNamesCamelCase from: cosmos-db.json where: $.definitions.MetricValue.properties._count @@ -98,34 +77,18 @@ directive: from: cosmos-db.json where: $.definitions.ExtendedResourceProperties.properties._ts reason: The resource has a property name with a leading underscore character - - suppress: DefinitionsPropertiesNamesCamelCase - from: cosmos-db.json - where: $.definitions.ExtendedResourceProperties.properties._self - reason: The resource has a property name with a leading underscore character - suppress: DefinitionsPropertiesNamesCamelCase from: cosmos-db.json where: $.definitions.ExtendedResourceProperties.properties._etag reason: The resource has a property name with a leading underscore character - suppress: DefinitionsPropertiesNamesCamelCase from: cosmos-db.json - where: $.definitions.SqlDatabaseProperties.properties._colls + where: $.definitions.SqlDatabaseGetProperties.properties._colls reason: The database has a property name with a leading underscore character - suppress: DefinitionsPropertiesNamesCamelCase from: cosmos-db.json - where: $.definitions.SqlDatabaseProperties.properties._users + where: $.definitions.SqlDatabaseGetProperties.properties._users reason: The database has a property name with a leading underscore character - - suppress: DefinitionsPropertiesNamesCamelCase - from: cosmos-db.json - where: $.definitions.GremlinDatabaseProperties.properties._rid - reason: The resource has a property name with a leading underscore character - - suppress: DefinitionsPropertiesNamesCamelCase - from: cosmos-db.json - where: $.definitions.GremlinDatabaseProperties.properties._ts - reason: The resource has a property name with a leading underscore character - - suppress: DefinitionsPropertiesNamesCamelCase - from: cosmos-db.json - where: $.definitions.GremlinDatabaseProperties.properties._etag - reason: The resource has a property name with a leading underscore character - suppress: DefinitionsPropertiesNamesCamelCase from: cosmos-db.json where: $.definitions.PercentileMetricValue.properties.P10 @@ -194,6 +157,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json - $(this-folder)/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json ``` diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/edgegateway.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json similarity index 99% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/edgegateway.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json index 8fd0787b8947..2816f48dee2e 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/edgegateway.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json @@ -1480,7 +1480,7 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "ShareGetAllInDevice": { + "SecuritySettingsUpdatePost": { "$ref": "./examples/SecuritySettingsUpdatePost.json" } } @@ -5127,4 +5127,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/AlertGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthScheduleGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json similarity index 79% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json index b039cfa005b4..2490d7f3a56a 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/BandwidthSchedulePut.json @@ -26,10 +26,7 @@ "Sunday", "Monday" ] - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", - "name": "bandwidth-1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSettings" + } } }, "responses": { diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByName.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByName.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByName.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByName.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetBySubscription.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetBySubscription.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetBySubscription.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDeviceGetBySubscription.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePatch.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePatch.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePatch.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePatch.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json similarity index 95% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json index ba8ca4c9fd30..81a07f15ae70 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DataBoxEdgeDevicePut.json @@ -22,8 +22,7 @@ "sku": { "name": "Edge", "tier": "Standard" - }, - "name": "testedgedevice" + } } }, "responses": { diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DownloadUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DownloadUpdatesPost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DownloadUpdatesPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/DownloadUpdatesPost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ExtendedInfoPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ExtendedInfoPost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ExtendedInfoPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ExtendedInfoPost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/InstallUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/InstallUpdatesPost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/InstallUpdatesPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/InstallUpdatesPost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/JobsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/JobsGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/JobsGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/JobsGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/NetworkSettingsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/NetworkSettingsGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/NetworkSettingsGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/NetworkSettingsGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsStatusGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsStatusGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsStatusGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OperationsStatusGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json similarity index 90% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json index bdbb6747b11c..a9b217deca24 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/OrderPut.json @@ -17,9 +17,6 @@ "en-US" ], "order": { - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", - "name": "default", - "type": "dataBoxEdgeDevices/orders", "properties": { "contactInformation": { "contactPerson": "John Mcclane", @@ -85,4 +82,4 @@ }, "202": {} } -} +} \ No newline at end of file diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RoleGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json similarity index 90% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json index 0e5c6e435f4d..cc8ee5ee9d41 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/RolePut.json @@ -49,10 +49,7 @@ }, "shareMappings": [], "roleStatus": "Enabled" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/Roles/IoTRole1", - "name": "IoTRole3", - "type": "dataBoxEdgeDevices/roles" + } } }, "responses": { diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json similarity index 98% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json index 6189f1131b4d..22e507ae2494 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SACPut.json @@ -28,8 +28,7 @@ }, "sslStatus": "Disabled", "accountType": "BlobStorage" - }, - "name": "sac1" + } } }, "responses": { diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ScanForUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ScanForUpdatesPost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ScanForUpdatesPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ScanForUpdatesPost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json similarity index 79% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json index 2ea930bd2c2a..208b1595a135 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SecuritySettingsUpdatePost.json @@ -17,9 +17,6 @@ "en-US" ], "securitySettings": { - "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/AzureVM/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/securitySettings/default", - "name": "default", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/securitySettings", "properties": { "deviceAdminPassword": { "value": "jJ5MvXa/AEWvwxviS92uCjatCXeyLYTy8jx/k105MjQRXT7i6Do8qpEcQ8d+OBbwmQTnwKW0CYyzzVRCc0uZcPCf6PsWtP4l6wvcKGAP66PwK68eEkTUOmp+wUHc4hk02kWmTWeAjBZkuDBP3xK1RnZo95g2RE4i1UgKNP5BEKCLd71O104DW3AWW41mh9XLWNOaxw+VjQY7wmvlE6XkvpkMhcGuha2u7lx8zi9ZkcMvJVYDYK36Fb/K3KhBAmDjjDmVq04jtBlcSTXQObt0nlj4BwGGtdrpeIpr67zqr5i3cPm6e6AleIaIhp6sI/uyGSMiT3oev2eg49u2ii7kVA==", diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json similarity index 98% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json index 09856ca5abe4..b21d94edcfe5 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/SharePut.json @@ -35,8 +35,7 @@ } ], "dataPolicy": "Cloud" - }, - "name": "smbshare" + } } }, "responses": { diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareRefreshPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareRefreshPost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareRefreshPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/ShareRefreshPost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json similarity index 88% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json index c6e550e6e404..a50490d86dc6 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/TriggerPut.json @@ -27,9 +27,6 @@ "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" } }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", - "name": "trigger1", - "type": "dataBoxEdgeDevices/triggers", "kind": "FileEvent" } }, @@ -53,4 +50,4 @@ }, "202": {} } -} +} \ No newline at end of file diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UploadCertificatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UploadCertificatePost.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UploadCertificatePost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UploadCertificatePost.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserDelete.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserDelete.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserDelete.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGet.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGet.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGet.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGetAllInDevice.json similarity index 100% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGetAllInDevice.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserGetAllInDevice.json diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json similarity index 92% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json index 0d80882deef3..8a21dcfc0daf 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UserPut.json @@ -18,8 +18,6 @@ "en-US" ], "user": { - "name": "user1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users", "properties": { "encryptedPassword": { "value": "Password@1", diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json new file mode 100644 index 000000000000..c55defee69e8 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json @@ -0,0 +1,4125 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-07-01", + "title": "DataBoxEdgeManagementClient" + }, + "host": "management.azure.com", + "schemes": [ "https" ], + "consumes": [ "application/json" ], + "produces": [ "application/json" ], + "paths": { + "/providers/Microsoft.DataBoxEdge/operations": { + "get": { + "tags": [ "Operations" ], + "summary": "List all the supported operations.", + "operationId": "Operations_List", + "parameters": [ { "$ref": "#/parameters/apiVersionParameter" } ], + "responses": { + "200": { + "description": "List of supported operations.", + "schema": { "$ref": "#/definitions/OperationsList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "OperationsGet": { + "$ref": "./examples/OperationsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { + "get": { + "tags": [ "Devices" ], + "description": "Gets all the Data Box Edge/Data Box Gateway devices in a subscription.", + "operationId": "Devices_ListBySubscription", + "parameters": [ + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/apiVersionParameter" }, + { + "name": "$expand", + "in": "query", + "description": "Specify $expand=details to populate additional fields related to the resource or Specify $skipToken= to populate the next page in the list.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The collection of Data Box Edge/Data Box Gateway devices.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetBySubscription": { + "$ref": "./examples/DataBoxEdgeDeviceGetBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { + "get": { + "tags": [ "Devices" ], + "description": "Gets all the Data Box Edge/Data Box Gateway devices in a resource group.", + "operationId": "Devices_ListByResourceGroup", + "parameters": [ + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" }, + { + "name": "$expand", + "in": "query", + "description": "Specify $expand=details to populate additional fields related to the resource or Specify $skipToken= to populate the next page in the list.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The collection of Data Box Edge/Data Box Gateway devices.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetByResourceGroup": { + "$ref": "./examples/DataBoxEdgeDeviceGetByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}": { + "get": { + "tags": [ "Devices" ], + "description": "Gets the properties of the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The Data Box Edge/Data Box Gateway device.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "DataBoxEdgeDeviceGetByName": { + "$ref": "./examples/DataBoxEdgeDeviceGetByName.json" + } + } + }, + "put": { + "tags": [ "Devices" ], + "description": "Creates or updates a Data Box Edge/Data Box Gateway resource.", + "operationId": "Devices_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "DataBoxEdgeDevice", + "in": "body", + "description": "The resource object.", + "required": true, + "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the resource.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataBoxEdgeDevicePut": { + "$ref": "./examples/DataBoxEdgeDevicePut.json" + } + } + }, + "delete": { + "tags": [ "Devices" ], + "description": "Deletes the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the resource." }, + "202": { "description": "Accepted the request to delete the resource." }, + "204": { "description": "The resource is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataBoxEdgeDeviceDelete": { + "$ref": "./examples/DataBoxEdgeDeviceDelete.json" + } + } + }, + "patch": { + "tags": [ "Devices" ], + "description": "Modifies a Data Box Edge/Data Box Gateway resource.", + "operationId": "Devices_Update", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource parameters.", + "required": true, + "schema": { "$ref": "#/definitions/DataBoxEdgeDevicePatch" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully updated the resource.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "DataBoxEdgeDevicePatch": { + "$ref": "./examples/DataBoxEdgeDevicePatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts": { + "get": { + "tags": [ "Alerts" ], + "description": "Gets all the alerts for a Data Box Edge/Data Box Gateway device.", + "operationId": "Alerts_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of alerts.", + "schema": { "$ref": "#/definitions/AlertList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "AlertGetAllInDevice": { + "$ref": "./examples/AlertGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts/{name}": { + "get": { + "tags": [ "Alerts" ], + "summary": "Gets an alert by name.", + "operationId": "Alerts_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The alert name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The alert details.", + "schema": { "$ref": "#/definitions/Alert" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "AlertGet": { + "$ref": "./examples/AlertGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules": { + "get": { + "tags": [ "BandwidthSchedules" ], + "description": "Gets all the bandwidth schedules for a Data Box Edge/Data Box Gateway device.", + "operationId": "BandwidthSchedules_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of bandwidth schedules.", + "schema": { "$ref": "#/definitions/BandwidthSchedulesList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "BandwidthScheduleGetAllInDevice": { + "$ref": "./examples/BandwidthScheduleGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules/{name}": { + "get": { + "tags": [ "BandwidthSchedules" ], + "description": "Gets the properties of the specified bandwidth schedule.", + "operationId": "BandwidthSchedules_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The bandwidth schedule.", + "schema": { "$ref": "#/definitions/BandwidthSchedule" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "BandwidthScheduleGet": { + "$ref": "./examples/BandwidthScheduleGet.json" + } + } + }, + "put": { + "tags": [ "BandwidthSchedules" ], + "description": "Creates or updates a bandwidth schedule.", + "operationId": "BandwidthSchedules_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name which needs to be added/updated.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The bandwidth schedule to be added or updated.", + "required": true, + "schema": { "$ref": "#/definitions/BandwidthSchedule" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the bandwidth schedule.", + "schema": { "$ref": "#/definitions/BandwidthSchedule" } + }, + "202": { "description": "Accepted the request to create or update the bandwidth schedule." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BandwidthSchedulePut": { + "$ref": "./examples/BandwidthSchedulePut.json" + } + } + }, + "delete": { + "tags": [ "BandwidthSchedules" ], + "description": "Deletes the specified bandwidth schedule.", + "operationId": "BandwidthSchedules_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The bandwidth schedule name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the bandwidth schedule." }, + "202": { "description": "Accepted the request to delete the bandwidth schedule." }, + "204": { "description": "Successfully deleted the bandwidth schedule." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BandwidthScheduleDelete": { + "$ref": "./examples/BandwidthScheduleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/downloadUpdates": { + "post": { + "tags": [ "Devices" ], + "summary": "Downloads the updates on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_DownloadUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully downloaded the updates on the device." }, + "202": { "description": "Accepted the request to download the updates on the device." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DownloadUpdatesPost": { + "$ref": "./examples/DownloadUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/getExtendedInformation": { + "post": { + "tags": [ "Devices" ], + "description": "Gets additional information for the specified Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_GetExtendedInformation", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The additional information.", + "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "ExtendedInfoPost": { + "$ref": "./examples/ExtendedInfoPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/installUpdates": { + "post": { + "tags": [ "Devices" ], + "summary": "Installs the updates on the Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_InstallUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully installed updates on the device." }, + "202": { "description": "Accepted the request to install updates on the device." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "InstallUpdatesPost": { + "$ref": "./examples/InstallUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/jobs/{name}": { + "get": { + "tags": [ "Jobs" ], + "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", + "operationId": "Jobs_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The job name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The job details.", + "schema": { "$ref": "#/definitions/Job" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "JobsGet": { + "$ref": "./examples/JobsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/networkSettings/default": { + "get": { + "tags": [ "Devices" ], + "description": "Gets the network settings of the specified Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_GetNetworkSettings", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The device network settings.", + "schema": { "$ref": "#/definitions/NetworkSettings" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "NetworkSettingsGet": { + "$ref": "./examples/NetworkSettingsGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/nodes": { + "get": { + "tags": [ "Nodes" ], + "description": "Gets all the nodes currently configured under this Data Box Edge device", + "operationId": "Nodes_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of all nodes on the device.", + "schema": { "$ref": "#/definitions/NodeList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": null }, + "x-ms-examples": { + "NodesGetAllInDevice": { + "$ref": "./examples/NodeGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/operationsStatus/{name}": { + "get": { + "tags": [ "OperationsStatus" ], + "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", + "operationId": "OperationsStatus_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The job name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The job details.", + "schema": { "$ref": "#/definitions/Job" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "OperationsStatusGet": { + "$ref": "./examples/OperationsStatusGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders": { + "get": { + "tags": [ "Orders" ], + "summary": "Lists all the orders related to a Data Box Edge/Data Box Gateway device.", + "operationId": "Orders_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Lists all the orders for the Data Box Edge Device", + "schema": { "$ref": "#/definitions/OrderList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "OrderGetAllInDevice": { + "$ref": "./examples/OrderGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default": { + "get": { + "tags": [ "Orders" ], + "summary": "Gets a specific order by name.", + "operationId": "Orders_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The order details of a device.", + "schema": { "$ref": "#/definitions/Order" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "OrderGet": { + "$ref": "./examples/OrderGet.json" + } + } + }, + "put": { + "tags": [ "Orders" ], + "summary": "Creates or updates an order.", + "operationId": "Orders_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "order", + "in": "body", + "description": "The order to be created or updated.", + "required": true, + "schema": { "$ref": "#/definitions/Order" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the order.", + "schema": { "$ref": "#/definitions/Order" } + }, + "202": { "description": "Accepted the request to create or update the order." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "OrderPut": { + "$ref": "./examples/OrderPut.json" + } + } + }, + "delete": { + "tags": [ "Orders" ], + "summary": "Deletes the order related to the device.", + "operationId": "Orders_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the order." }, + "202": { "description": "Accepted the request to delete the order." }, + "204": { "description": "The order is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "OrderDelete": { + "$ref": "./examples/OrderDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles": { + "get": { + "tags": [ "Roles" ], + "description": "Lists all the roles configured in a Data Box Edge/Data Box Gateway device.", + "operationId": "Roles_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "List of all the roles configured in the device.", + "schema": { "$ref": "#/definitions/RoleList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "RoleGetAllInDevice": { + "$ref": "./examples/RoleGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{name}": { + "get": { + "tags": [ "Roles" ], + "description": "Gets a specific role by name.", + "operationId": "Roles_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The role with the specified name in the given device.", + "schema": { "$ref": "#/definitions/Role" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "RoleGet": { + "$ref": "./examples/RoleGet.json" + } + } + }, + "put": { + "tags": [ "Roles" ], + "description": "Create or update a role.", + "operationId": "Roles_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { + "name": "role", + "in": "body", + "description": "The role properties.", + "required": true, + "schema": { "$ref": "#/definitions/Role" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the role.", + "schema": { "$ref": "#/definitions/Role" } + }, + "202": { "description": "Accepted the request to create or update the role." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "RolePut": { + "$ref": "./examples/RolePut.json" + } + } + }, + "delete": { + "tags": [ "Roles" ], + "description": "Deletes the role on the device.", + "operationId": "Roles_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The role name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the role." }, + "202": { "description": "Accepted the request to delete the role." }, + "204": { "description": "The role is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "RoleDelete": { + "$ref": "./examples/RoleDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/scanForUpdates": { + "post": { + "tags": [ "Devices" ], + "summary": "Scans for updates on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_ScanForUpdates", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully scanned the device for updates." }, + "202": { "description": "Accepted the request to scan for updates on the device." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ScanForUpdatesPost": { + "$ref": "./examples/ScanForUpdatesPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/securitySettings/default/update": { + "post": { + "tags": [ "Devices" ], + "description": "Updates the security settings on a Data Box Edge/Data Box Gateway device.", + "operationId": "Devices_CreateOrUpdateSecuritySettings", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "securitySettings", + "in": "body", + "description": "The security settings.", + "required": true, + "schema": { "$ref": "#/definitions/SecuritySettings" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "202": { "description": "Accepted the request to update the security settings." }, + "204": { "description": "Updated the security settings." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CreateOrUpdateSecuritySettings": { + "$ref": "./examples/SecuritySettingsUpdatePost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares": { + "get": { + "tags": [ "Shares" ], + "summary": "Lists all the shares in a Data Box Edge/Data Box Gateway device.", + "operationId": "Shares_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of all the shares on the device.", + "schema": { "$ref": "#/definitions/ShareList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "ShareGetAllInDevice": { + "$ref": "./examples/ShareGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}": { + "get": { + "tags": [ "Shares" ], + "summary": "Gets a share by name.", + "operationId": "Shares_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The share details.", + "schema": { "$ref": "#/definitions/Share" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "ShareGet": { + "$ref": "./examples/ShareGet.json" + } + } + }, + "put": { + "tags": [ "Shares" ], + "summary": "Creates a new share or updates an existing share on the device.", + "operationId": "Shares_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { + "name": "share", + "in": "body", + "description": "The share properties.", + "required": true, + "schema": { "$ref": "#/definitions/Share" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the share.", + "schema": { "$ref": "#/definitions/Share" } + }, + "202": { "description": "Accepted the request to create or update the share." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SharePut": { + "$ref": "./examples/SharePut.json" + } + } + }, + "delete": { + "tags": [ "Shares" ], + "description": "Deletes the share on the Data Box Edge/Data Box Gateway device.", + "operationId": "Shares_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the share." }, + "202": { "description": "Accepted the request to delete the share." }, + "204": { "description": "The share is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ShareDelete": { + "$ref": "./examples/ShareDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}/refresh": { + "post": { + "tags": [ "Shares" ], + "summary": "Refreshes the share metadata with the data from the cloud.", + "operationId": "Shares_Refresh", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The share name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully refreshed the share on the device." }, + "202": { "description": "Accepted the request to refresh the share on the device." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ShareRefreshPost": { + "$ref": "./examples/ShareRefreshPost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials": { + "get": { + "tags": [ "StorageAccountCredentials" ], + "summary": "Gets all the storage account credentials in a Data Box Edge/Data Box Gateway device.", + "operationId": "StorageAccountCredentials_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of storage account credentials.", + "schema": { "$ref": "#/definitions/StorageAccountCredentialList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "SACGetAllInDevice": { + "$ref": "./examples/SACGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials/{name}": { + "get": { + "tags": [ "StorageAccountCredentials" ], + "description": "Gets the properties of the specified storage account credential.", + "operationId": "StorageAccountCredentials_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The storage account credential properties.", + "schema": { "$ref": "#/definitions/StorageAccountCredential" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "SACGet": { + "$ref": "./examples/SACGet.json" + } + } + }, + "put": { + "tags": [ "StorageAccountCredentials" ], + "description": "Creates or updates the storage account credential.", + "operationId": "StorageAccountCredentials_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { + "name": "storageAccountCredential", + "in": "body", + "description": "The storage account credential.", + "required": true, + "schema": { "$ref": "#/definitions/StorageAccountCredential" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the storage account credential.", + "schema": { "$ref": "#/definitions/StorageAccountCredential" } + }, + "202": { "description": "Accepted the request to create or update the storage account credential." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SACPut": { + "$ref": "./examples/SACPut.json" + } + } + }, + "delete": { + "tags": [ "StorageAccountCredentials" ], + "description": "Deletes the storage account credential.", + "operationId": "StorageAccountCredentials_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The storage account credential name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the storage account credential." }, + "202": { "description": "Accepted the request to delete the storage account credential." }, + "204": { "description": "The storage account credential is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "SACDelete": { + "$ref": "./examples/SACDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers": { + "get": { + "tags": [ "Triggers" ], + "description": "Lists all the triggers configured in the device.", + "operationId": "Triggers_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" }, + { + "name": "$expand", + "in": "query", + "description": "Specify $filter='CustomContextTag eq ' to filter on custom context tag property", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "List all the triggers configured in the device", + "schema": { "$ref": "#/definitions/TriggerList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "TriggerGetAllInDevice": { + "$ref": "./examples/TriggerGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers/{name}": { + "get": { + "tags": [ "Triggers" ], + "description": "Get a specific trigger by name.", + "operationId": "Triggers_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The trigger.", + "schema": { "$ref": "#/definitions/Trigger" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "TriggerGet": { + "$ref": "./examples/TriggerGet.json" + } + } + }, + "put": { + "tags": [ "Triggers" ], + "description": "Creates or updates a trigger.", + "operationId": "Triggers_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "Creates or updates a trigger", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { + "name": "trigger", + "in": "body", + "description": "The trigger.", + "required": true, + "schema": { "$ref": "#/definitions/Trigger" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the trigger.", + "schema": { "$ref": "#/definitions/Trigger" } + }, + "202": { "description": "Accepted the request to create or update the trigger." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "TriggerPut": { + "$ref": "./examples/TriggerPut.json" + } + } + }, + "delete": { + "tags": [ "Triggers" ], + "description": "Deletes the trigger on the gateway device.", + "operationId": "Triggers_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The trigger name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the trigger." }, + "202": { "description": "Accepted the request to delete the trigger." }, + "204": { "description": "The trigger is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "TriggerDelete": { + "$ref": "./examples/TriggerDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default": { + "get": { + "tags": [ "Devices" ], + "summary": "Gets information about the availability of updates based on the last scan of the device. It also gets information about any ongoing download or install jobs on the device.", + "operationId": "Devices_GetUpdateSummary", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The update summary.", + "schema": { "$ref": "#/definitions/UpdateSummary" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "UpdateSummaryGet": { + "$ref": "./examples/UpdateSummaryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate": { + "post": { + "tags": [ "Devices" ], + "description": "Uploads registration certificate for the device.", + "operationId": "Devices_UploadCertificate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The upload certificate request.", + "required": true, + "schema": { "$ref": "#/definitions/UploadCertificateRequest" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully uploaded the registration certificate.", + "schema": { "$ref": "#/definitions/UploadCertificateResponse" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "UploadCertificatePost": { + "$ref": "./examples/UploadCertificatePost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users": { + "get": { + "tags": [ "Users" ], + "description": "Gets all the users registered on a Data Box Edge/Data Box Gateway device.", + "operationId": "Users_ListByDataBoxEdgeDevice", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The collection of all users on the device.", + "schema": { "$ref": "#/definitions/UserList" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-examples": { + "OperationsGet": { + "$ref": "./examples/UserGetAllInDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}": { + "get": { + "tags": [ "Users" ], + "description": "Gets the properties of the specified user.", + "operationId": "Users_Get", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "The user details.", + "schema": { "$ref": "#/definitions/User" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "UserGet": { + "$ref": "./examples/UserGet.json" + } + } + }, + "put": { + "tags": [ "Users" ], + "description": "Creates a new user or updates an existing user's information on a Data Box Edge/Data Box Gateway device.", + "operationId": "Users_CreateOrUpdate", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { + "name": "user", + "in": "body", + "description": "The user details.", + "required": true, + "schema": { "$ref": "#/definitions/User" } + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { + "description": "Successfully created or updated the user.", + "schema": { "$ref": "#/definitions/User" } + }, + "202": { "description": "Accepted the request to create or update the user." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "UserPut": { + "$ref": "./examples/UserPut.json" + } + } + }, + "delete": { + "tags": [ "Users" ], + "description": "Deletes the user on a databox edge/gateway device.", + "operationId": "Users_Delete", + "parameters": [ + { + "name": "deviceName", + "in": "path", + "description": "The device name.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The user name.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/subscriptionIdParameter" }, + { "$ref": "#/parameters/resourceGroupNameParameter" }, + { "$ref": "#/parameters/apiVersionParameter" } + ], + "responses": { + "200": { "description": "Successfully deleted the user." }, + "202": { "description": "Accepted the request to delete the user." }, + "204": { "description": "The user is already deleted." }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "UserDelete": { + "$ref": "./examples/UserDelete.json" + } + } + } + } + }, + "definitions": { + "Address": { + "description": "The shipping address of the customer.", + "required": [ "addressLine1", "postalCode", "city", "state", "country" ], + "type": "object", + "properties": { + "addressLine1": { + "description": "The address line1.", + "type": "string" + }, + "addressLine2": { + "description": "The address line2.", + "type": "string" + }, + "addressLine3": { + "description": "The address line3.", + "type": "string" + }, + "postalCode": { + "description": "The postal code.", + "type": "string" + }, + "city": { + "description": "The city name.", + "type": "string" + }, + "state": { + "description": "The state name.", + "type": "string" + }, + "country": { + "description": "The country name.", + "type": "string" + } + } + }, + "Alert": { + "description": "Alert on the data box edge/gateway device.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/AlertProperties", + "description": "Properties of alert.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "AlertErrorDetails": { + "description": "Error details for the alert.", + "type": "object", + "properties": { + "errorCode": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error Message.", + "type": "string", + "readOnly": true + }, + "occurrences": { + "format": "int32", + "description": "Number of occurrences.", + "type": "integer", + "readOnly": true + } + } + }, + "AlertList": { + "description": "Collection of alerts.", + "type": "object", + "properties": { + "value": { + "description": "The value.", + "type": "array", + "items": { "$ref": "#/definitions/Alert" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "AlertProperties": { + "description": "Properties of alert.", + "type": "object", + "properties": { + "title": { + "description": "Alert title.", + "type": "string", + "readOnly": true + }, + "alertType": { + "description": "Alert type.", + "type": "string", + "readOnly": true + }, + "appearedAtDateTime": { + "format": "date-time", + "description": "UTC time when the alert appeared.", + "type": "string", + "readOnly": true + }, + "recommendation": { + "description": "Alert recommendation.", + "type": "string", + "readOnly": true + }, + "severity": { + "description": "Severity of the alert.", + "enum": [ "Informational", "Warning", "Critical" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AlertSeverity", + "modelAsString": true + } + }, + "errorDetails": { + "$ref": "#/definitions/AlertErrorDetails", + "description": "Error details of the alert.", + "readOnly": true + }, + "detailedInformation": { + "description": "Alert details.", + "type": "object", + "additionalProperties": { "type": "string" }, + "readOnly": true + } + } + }, + "ARMBaseModel": { + "description": "Represents the base class for all object models.", + "type": "object", + "properties": { + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "AsymmetricEncryptedSecret": { + "description": "Represent the secrets intended for encryption with asymmetric key pair.", + "required": [ "value", "encryptionAlgorithm" ], + "type": "object", + "properties": { + "value": { + "description": "The value of the secret.", + "type": "string" + }, + "encryptionCertThumbprint": { + "description": "Thumbprint certificate used to encrypt \\\"Value\\\". If the value is unencrypted, it will be null.", + "type": "string" + }, + "encryptionAlgorithm": { + "description": "The algorithm used to encrypt \"Value\".", + "enum": [ "None", "AES256", "RSAES_PKCS1_v_1_5" ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionAlgorithm", + "modelAsString": true + } + } + } + }, + "Authentication": { + "description": "Authentication mechanism for IoT devices.", + "type": "object", + "properties": { + "symmetricKey": { + "$ref": "#/definitions/SymmetricKey", + "description": "Symmetric key for authentication." + } + } + }, + "AzureContainerInfo": { + "description": "Azure container mapping of the endpoint.", + "required": [ "storageAccountCredentialId", "containerName", "dataFormat" ], + "type": "object", + "properties": { + "storageAccountCredentialId": { + "description": "ID of the storage account credential used to access storage.", + "type": "string" + }, + "containerName": { + "description": "Container name (Based on the data format specified, this represents the name of Azure Files/Page blob/Block blob).", + "type": "string" + }, + "dataFormat": { + "description": "Storage format used for the file represented by the share.", + "enum": [ "BlockBlob", "PageBlob", "AzureFile" ], + "type": "string", + "x-ms-enum": { + "name": "AzureContainerDataFormat", + "modelAsString": true + } + } + } + }, + "BandwidthSchedule": { + "description": "The bandwidth schedule details.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/BandwidthScheduleProperties", + "description": "The properties of the bandwidth schedule.", + "x-ms-client-flatten": true + } + } + }, + "BandwidthScheduleProperties": { + "description": "The properties of the bandwidth schedule.", + "required": [ "start", "stop", "rateInMbps", "days" ], + "type": "object", + "properties": { + "start": { + "description": "The start time of the schedule in UTC.", + "type": "string" + }, + "stop": { + "description": "The stop time of the schedule in UTC.", + "type": "string" + }, + "rateInMbps": { + "format": "int32", + "description": "The bandwidth rate in Mbps.", + "type": "integer" + }, + "days": { + "description": "The days of the week when this schedule is applicable.", + "type": "array", + "items": { + "enum": [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": true + } + } + } + } + }, + "BandwidthSchedulesList": { + "description": "The collection of bandwidth schedules.", + "type": "object", + "properties": { + "value": { + "description": "The list of bandwidth schedules.", + "type": "array", + "items": { "$ref": "#/definitions/BandwidthSchedule" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ClientAccessRight": { + "description": "The mapping between a particular client IP and the type of access client has on the NFS share.", + "required": [ "client", "accessPermission" ], + "type": "object", + "properties": { + "client": { + "description": "IP of the client.", + "type": "string" + }, + "accessPermission": { + "description": "Type of access to be allowed for the client.", + "enum": [ "NoAccess", "ReadOnly", "ReadWrite" ], + "type": "string", + "x-ms-enum": { + "name": "ClientPermissionType", + "modelAsString": true + } + } + } + }, + "CloudError": { + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "The error details." + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from the service.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "type": "array", + "items": { "$ref": "#/definitions/CloudErrorBody" } + } + }, + "x-ms-external": true + }, + "ContactDetails": { + "description": "Contains all the contact details of the customer.", + "required": [ "contactPerson", "companyName", "phone", "emailList" ], + "type": "object", + "properties": { + "contactPerson": { + "description": "The contact person name.", + "type": "string" + }, + "companyName": { + "description": "The name of the company.", + "type": "string" + }, + "phone": { + "description": "The phone number.", + "type": "string" + }, + "emailList": { + "description": "The email list.", + "type": "array", + "items": { "type": "string" } + } + } + }, + "DataBoxEdgeDevice": { + "description": "The Data Box Edge/Gateway device.", + "required": [ "location" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "location": { + "description": "The location of the device. This is a supported and registered Azure geographical region (for example, West US, East US, or Southeast Asia). The geographical region of a device cannot be changed once it is created, but if an identical geographical region is specified on update, the request will succeed.", + "type": "string", + "x-ms-mutability": [ "read", "create" ] + }, + "tags": { + "description": "The list of tags that describe the device. These tags can be used to view and group this device (across resource groups).", + "type": "object", + "additionalProperties": { "type": "string" } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU type." + }, + "etag": { + "description": "The etag for the devices.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/DataBoxEdgeDeviceProperties", + "description": "The properties of the Data Box Edge/Gateway device.", + "x-ms-client-flatten": true + } + } + }, + "DataBoxEdgeDeviceExtendedInfo": { + "description": "The extended Info of the Data Box Edge/Gateway device.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfoProperties", + "description": "The extended info properties.", + "x-ms-client-flatten": true + } + } + }, + "DataBoxEdgeDeviceExtendedInfoProperties": { + "description": "The properties of the Data Box Edge/Gateway device extended info.", + "type": "object", + "properties": { + "encryptionKeyThumbprint": { + "description": "The digital signature of encrypted certificate.", + "type": "string" + }, + "encryptionKey": { + "description": "The public part of the encryption certificate. Client uses this to encrypt any secret.", + "type": "string" + }, + "resourceKey": { + "description": "The Resource ID of the Resource.", + "type": "string", + "readOnly": true + } + } + }, + "DataBoxEdgeDeviceList": { + "description": "The collection of Data Box Edge/Gateway devices.", + "type": "object", + "properties": { + "value": { + "description": "The list of Data Box Edge/Gateway devices.", + "type": "array", + "items": { "$ref": "#/definitions/DataBoxEdgeDevice" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "DataBoxEdgeDevicePatch": { + "description": "The Data Box Edge/Gateway device patch.", + "type": "object", + "properties": { + "tags": { + "description": "The tags attached to the Data Box Edge/Gateway resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "DataBoxEdgeDeviceProperties": { + "description": "The properties of the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "dataBoxEdgeDeviceStatus": { + "description": "The status of the Data Box Edge/Gateway device.", + "enum": [ "ReadyToSetup", "Online", "Offline", "NeedsAttention", "Disconnected", "PartiallyDisconnected", "Maintenance" ], + "type": "string", + "x-ms-enum": { + "name": "DataBoxEdgeDeviceStatus", + "modelAsString": true + } + }, + "serialNumber": { + "description": "The Serial Number of Data Box Edge/Gateway device.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The Description of the Data Box Edge/Gateway device.", + "type": "string" + }, + "modelDescription": { + "description": "The description of the Data Box Edge/Gateway device model.", + "type": "string" + }, + "deviceType": { + "description": "The type of the Data Box Edge/Gateway device.", + "enum": [ "DataBoxEdgeDevice" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DeviceType", + "modelAsString": true + } + }, + "friendlyName": { + "description": "The Data Box Edge/Gateway device name.", + "type": "string" + }, + "culture": { + "description": "The Data Box Edge/Gateway device culture.", + "type": "string", + "readOnly": true + }, + "deviceModel": { + "description": "The Data Box Edge/Gateway device model.", + "type": "string", + "readOnly": true + }, + "deviceSoftwareVersion": { + "description": "The Data Box Edge/Gateway device software version.", + "type": "string", + "readOnly": true + }, + "deviceLocalCapacity": { + "format": "int64", + "description": "The Data Box Edge/Gateway device local capacity in MB.", + "type": "integer", + "readOnly": true + }, + "timeZone": { + "description": "The Data Box Edge/Gateway device timezone.", + "type": "string", + "readOnly": true + }, + "deviceHcsVersion": { + "description": "The device software version number of the device (eg: 1.2.18105.6).", + "type": "string", + "readOnly": true + }, + "configuredRoleTypes": { + "description": "Type of compute roles configured.", + "type": "array", + "items": { + "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "type": "string", + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + }, + "readOnly": true + }, + "nodeCount": { + "format": "int32", + "description": "The number of nodes in the cluster.", + "type": "integer", + "readOnly": true + } + } + }, + "FileEventTrigger": { + "description": "Trigger details.", + "required": [ "properties", "kind" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "properties": { + "properties": { + "$ref": "#/definitions/FileTriggerProperties", + "description": "File trigger properties.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "FileEvent" + }, + "FileSourceInfo": { + "description": "File source details.", + "required": [ "shareId" ], + "type": "object", + "properties": { + "shareId": { + "description": "File share ID.", + "type": "string" + } + } + }, + "FileTriggerProperties": { + "description": "File trigger properties.", + "required": [ "sourceInfo", "sinkInfo" ], + "type": "object", + "properties": { + "sourceInfo": { + "$ref": "#/definitions/FileSourceInfo", + "description": "File event source details." + }, + "sinkInfo": { + "$ref": "#/definitions/RoleSinkInfo", + "description": "Role sink info." + }, + "customContextTag": { + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module.", + "type": "string" + } + } + }, + "IoTDeviceInfo": { + "description": "Metadata of IoT device/IoT Edge device to be configured.", + "required": [ "deviceId", "ioTHostHub" ], + "type": "object", + "properties": { + "deviceId": { + "description": "ID of the IoT device/edge device.", + "type": "string" + }, + "ioTHostHub": { + "description": "Host name for the IoT hub associated to the device.", + "type": "string" + }, + "ioTHostHubId": { + "description": "Id of the IoT hub associated to the device.", + "type": "string" + }, + "authentication": { + "$ref": "#/definitions/Authentication", + "description": "IoT device authentication info." + } + } + }, + "IoTRole": { + "description": "Compute role.", + "required": [ "kind" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Role" } ], + "properties": { + "properties": { + "$ref": "#/definitions/IoTRoleProperties", + "description": "Properties specific to IoT role.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "IOT" + }, + "IoTRoleProperties": { + "description": "IoT role properties.", + "required": [ "hostPlatform", "ioTDeviceDetails", "ioTEdgeDeviceDetails", "roleStatus" ], + "type": "object", + "properties": { + "hostPlatform": { + "description": "Host OS supported by the IoT role.", + "enum": [ "Windows", "Linux" ], + "type": "string", + "x-ms-enum": { + "name": "PlatformType", + "modelAsString": true + } + }, + "ioTDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT device metadata to which data box edge device needs to be connected." + }, + "ioTEdgeDeviceDetails": { + "$ref": "#/definitions/IoTDeviceInfo", + "description": "IoT edge device to which the IoT role needs to be configured." + }, + "shareMappings": { + "description": "Mount points of shares in role(s).", + "type": "array", + "items": { "$ref": "#/definitions/MountPointMap" } + }, + "roleStatus": { + "description": "Role status.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "RoleStatus", + "modelAsString": true + } + } + } + }, + "Ipv4Config": { + "description": "Details related to the IPv4 address configuration.", + "type": "object", + "properties": { + "ipAddress": { + "description": "The IPv4 address of the network adapter.", + "type": "string", + "readOnly": true + }, + "subnet": { + "description": "The IPv4 subnet of the network adapter.", + "type": "string", + "readOnly": true + }, + "gateway": { + "description": "The IPv4 gateway of the network adapter.", + "type": "string", + "readOnly": true + } + } + }, + "Ipv6Config": { + "description": "Details related to the IPv6 address configuration.", + "type": "object", + "properties": { + "ipAddress": { + "description": "The IPv6 address of the network adapter.", + "type": "string", + "readOnly": true + }, + "prefixLength": { + "format": "int32", + "description": "The IPv6 prefix of the network adapter.", + "type": "integer", + "readOnly": true + }, + "gateway": { + "description": "The IPv6 gateway of the network adapter.", + "type": "string", + "readOnly": true + } + } + }, + "Job": { + "description": "A device job.", + "type": "object", + "properties": { + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The current status of the job.", + "enum": [ "Invalid", "Running", "Succeeded", "Failed", "Canceled", "Paused", "Scheduled" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The UTC date and time at which the job started.", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The UTC date and time at which the job completed.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the job that is complete.", + "type": "integer", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/JobErrorDetails", + "description": "The error details.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "The properties of the job.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "JobErrorDetails": { + "description": "The job error information containing the list of job errors.", + "type": "object", + "properties": { + "errorDetails": { + "description": "The error details.", + "type": "array", + "items": { "$ref": "#/definitions/JobErrorItem" }, + "readOnly": true + }, + "code": { + "description": "The code intended for programmatic access.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The message that describes the error in detail.", + "type": "string", + "readOnly": true + } + } + }, + "JobErrorItem": { + "description": "The job error items.", + "type": "object", + "properties": { + "recommendations": { + "description": "The recommended actions.", + "type": "array", + "items": { "type": "string" }, + "readOnly": true + }, + "code": { + "description": "The code intended for programmatic access.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The message that describes the error in detail.", + "type": "string", + "readOnly": true + } + } + }, + "JobProperties": { + "description": "The properties for the job.", + "type": "object", + "properties": { + "jobType": { + "description": "The type of the job.", + "enum": [ "Invalid", "ScanForUpdates", "DownloadUpdates", "InstallUpdates", "RefreshShare" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "currentStage": { + "description": "Current stage of the update operation.", + "enum": [ "Unknown", "Initial", "ScanStarted", "ScanComplete", "ScanFailed", "DownloadStarted", "DownloadComplete", "DownloadFailed", "InstallStarted", "InstallComplete", "InstallFailed", "RebootInitiated", "Success", "Failure", "RescanStarted", "RescanComplete", "RescanFailed" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UpdateOperationStage", + "modelAsString": true + } + }, + "downloadProgress": { + "$ref": "#/definitions/UpdateDownloadProgress", + "description": "The download progress.", + "readOnly": true + }, + "installProgress": { + "$ref": "#/definitions/UpdateInstallProgress", + "description": "The install progress.", + "readOnly": true + }, + "totalRefreshErrors": { + "format": "int32", + "description": "Total number of errors encountered during the refresh process.", + "type": "integer", + "readOnly": true + }, + "errorManifestFile": { + "description": "Local share/remote container relative path to the error manifest file of the refresh.", + "type": "string", + "readOnly": true + }, + "shareId": { + "description": "ARM ID of the share that was refreshed.", + "type": "string", + "readOnly": true + }, + "folder": { + "description": "If only subfolders need to be refreshed, then the subfolder path inside the share. (The path is empty if there are no subfolders.)", + "type": "string" + } + } + }, + "MetricDimension_V1": { + "description": "Metric Dimension v1.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metrics dimension.", + "type": "string" + }, + "displayName": { + "description": "Display name of the metrics dimension.", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "To be exported to shoe box.", + "type": "boolean" + } + } + }, + "MetricSpecification_V1": { + "description": "Metric specification version 1.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric.", + "type": "string" + }, + "displayName": { + "description": "Display name of the metric.", + "type": "string" + }, + "displayDescription": { + "description": "Description of the metric to be displayed.", + "type": "string" + }, + "unit": { + "description": "Metric units.", + "enum": [ "NotSpecified", "Percent", "Count", "Seconds", "Milliseconds", "Bytes", "BytesPerSecond", "CountPerSecond" ], + "type": "string", + "x-ms-enum": { + "name": "MetricUnit", + "modelAsString": true + } + }, + "aggregationType": { + "description": "Metric aggregation type.", + "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "type": "string", + "x-ms-enum": { + "name": "MetricAggregationType", + "modelAsString": true + } + }, + "dimensions": { + "description": "Metric dimensions, other than default dimension which is resource.", + "type": "array", + "items": { "$ref": "#/definitions/MetricDimension_V1" } + }, + "fillGapWithZero": { + "description": "Set true to fill the gaps with zero.", + "type": "boolean" + }, + "category": { + "description": "Metric category.", + "enum": [ "Capacity", "Transaction" ], + "type": "string", + "x-ms-enum": { + "name": "MetricCategory", + "modelAsString": true + } + }, + "resourceIdDimensionNameOverride": { + "description": "Resource name override.", + "type": "string" + }, + "supportedTimeGrainTypes": { + "description": "Support granularity of metrics.", + "type": "array", + "items": { + "enum": [ "PT1M", "PT5M", "PT15M", "PT30M", "PT1H", "PT6H", "PT12H", "PT1D" ], + "type": "string", + "x-ms-enum": { + "name": "TimeGrain", + "modelAsString": true + } + } + }, + "supportedAggregationTypes": { + "description": "Support metric aggregation type.", + "type": "array", + "items": { + "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "type": "string", + "x-ms-enum": { + "name": "MetricAggregationType", + "modelAsString": true + } + } + } + } + }, + "MountPointMap": { + "description": "The share mount point.", + "required": [ "shareId" ], + "type": "object", + "properties": { + "shareId": { + "description": "ID of the share mounted to the role VM.", + "type": "string" + }, + "roleId": { + "description": "ID of the role to which share is mounted.", + "type": "string", + "readOnly": true + }, + "mountPoint": { + "description": "Mount point for the share.", + "type": "string", + "readOnly": true + }, + "roleType": { + "description": "Role type.", + "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + } + } + }, + "NetworkAdapter": { + "description": "Represents the networkAdapter on a device.", + "type": "object", + "properties": { + "adapterId": { + "description": "Instance ID of network adapter.", + "type": "string", + "readOnly": true + }, + "adapterPosition": { + "$ref": "#/definitions/NetworkAdapterPosition", + "description": "Hardware position of network adapter.", + "readOnly": true + }, + "index": { + "format": "int32", + "description": "Logical index of the adapter.", + "type": "integer", + "readOnly": true + }, + "nodeId": { + "description": "Node ID of the network adapter.", + "type": "string", + "readOnly": true + }, + "networkAdapterName": { + "description": "Network adapter name.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "Hardware label for the adapter.", + "type": "string", + "readOnly": true + }, + "macAddress": { + "description": "MAC address.", + "type": "string", + "readOnly": true + }, + "linkSpeed": { + "format": "int64", + "description": "Link speed.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "Value indicating whether this adapter is valid.", + "enum": [ "Inactive", "Active" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NetworkAdapterStatus", + "modelAsString": true + } + }, + "rdmaStatus": { + "description": "Value indicating whether this adapter is RDMA capable.", + "enum": [ "Incapable", "Capable" ], + "type": "string", + "x-ms-enum": { + "name": "NetworkAdapterRDMAStatus", + "modelAsString": true + } + }, + "dhcpStatus": { + "description": "Value indicating whether this adapter has DHCP enabled.", + "enum": [ "Disabled", "Enabled" ], + "type": "string", + "x-ms-enum": { + "name": "NetworkAdapterDHCPStatus", + "modelAsString": true + } + }, + "ipv4Configuration": { + "$ref": "#/definitions/Ipv4Config", + "description": "The IPv4 configuration of the network adapter.", + "readOnly": true + }, + "ipv6Configuration": { + "$ref": "#/definitions/Ipv6Config", + "description": "The IPv6 configuration of the network adapter.", + "readOnly": true + }, + "ipv6LinkLocalAddress": { + "description": "The IPv6 local address.", + "type": "string", + "readOnly": true + }, + "dnsServers": { + "description": "The list of DNS Servers of the device.", + "type": "array", + "items": { "type": "string" }, + "readOnly": true + } + } + }, + "NetworkAdapterPosition": { + "description": "The network adapter position.", + "type": "object", + "properties": { + "networkGroup": { + "description": "The network group.", + "enum": [ "None", "NonRDMA", "RDMA" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NetworkGroup", + "modelAsString": true + } + }, + "port": { + "format": "int32", + "description": "The port.", + "type": "integer", + "readOnly": true + } + } + }, + "NetworkSettings": { + "description": "The network settings of a device.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/NetworkSettingsProperties", + "description": "The properties of network settings of a device.", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "NetworkSettingsProperties": { + "description": "The properties of network settings.", + "type": "object", + "properties": { + "networkAdapters": { + "description": "The network adapter list on the device.", + "type": "array", + "items": { "$ref": "#/definitions/NetworkAdapter" }, + "readOnly": true + } + } + }, + "Node": { + "description": "Represents a single node in a Data box Edge/Gateway device\r\nGateway devices, standalone Edge devices and a single node cluster Edge device will all have 1 node\r\nMulti-node Edge devices will have more than 1 nodes", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/NodeProperties", + "description": "The properties of the node", + "readOnly": true, + "x-ms-client-flatten": true + } + } + }, + "NodeList": { + "description": "Collection of Nodes.", + "type": "object", + "properties": { + "value": { + "description": "The list of Nodes.", + "type": "array", + "items": { "$ref": "#/definitions/Node" }, + "readOnly": true + } + } + }, + "NodeProperties": { + "description": "This class represents the nodes in a highly available cluster", + "type": "object", + "properties": { + "nodeStatus": { + "description": "The current status of the individual node", + "enum": [ "Unknown", "Up", "Down", "Rebooting", "ShuttingDown" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "NodeStatus", + "modelAsString": true + } + }, + "nodeChassisSerialNumber": { + "description": "Serial number of the Chassis", + "type": "string", + "readOnly": true + }, + "nodeSerialNumber": { + "description": "Serial number of the individual node", + "type": "string", + "readOnly": true + }, + "nodeDisplayName": { + "description": "Display Name of the individual node", + "type": "string", + "readOnly": true + }, + "nodeFriendlySoftwareVersion": { + "description": "Friendly software version name that is currently installed on the node", + "type": "string", + "readOnly": true + }, + "nodeHcsVersion": { + "description": "HCS version that is currently installed on the node", + "type": "string", + "readOnly": true + }, + "nodeInstanceId": { + "description": "Guid instance id of the node", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "Operations.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "Properties displayed for the operation." + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Operation properties.", + "x-ms-client-flatten": true + } + } + }, + "OperationDisplay": { + "description": "Operation display properties.", + "type": "object", + "properties": { + "provider": { + "description": "Provider name.", + "type": "string" + }, + "resource": { + "description": "The type of resource in which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation to be performed on the resource.", + "type": "string" + }, + "description": { + "description": "Description of the operation to be performed.", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Operation properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "Service specification." + } + } + }, + "OperationsList": { + "description": "The list of operations used for the discovery of available provider operations.", + "required": [ "value" ], + "type": "object", + "properties": { + "value": { + "description": "The value.", + "type": "array", + "items": { "$ref": "#/definitions/Operation" } + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string" + } + } + }, + "Order": { + "description": "The order details.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/OrderProperties", + "description": "The order properties.", + "x-ms-client-flatten": true + } + } + }, + "OrderList": { + "description": "List of order entities.", + "type": "object", + "properties": { + "value": { + "description": "The list of orders.", + "type": "array", + "items": { "$ref": "#/definitions/Order" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "OrderProperties": { + "description": "Order properties.", + "required": [ "contactInformation", "shippingAddress" ], + "type": "object", + "properties": { + "contactInformation": { + "$ref": "#/definitions/ContactDetails", + "description": "The contact details." + }, + "shippingAddress": { + "$ref": "#/definitions/Address", + "description": "The shipping address." + }, + "currentStatus": { + "$ref": "#/definitions/OrderStatus", + "description": "Current status of the order." + }, + "orderHistory": { + "description": "List of status changes in the order.", + "type": "array", + "items": { "$ref": "#/definitions/OrderStatus" }, + "readOnly": true + }, + "serialNumber": { + "description": "Serial number of the device.", + "type": "string", + "readOnly": true + }, + "deliveryTrackingInfo": { + "description": "Tracking information for the package delivered to the customer whether it has an original or a replacement device.", + "type": "array", + "items": { "$ref": "#/definitions/TrackingInfo" }, + "readOnly": true + }, + "returnTrackingInfo": { + "description": "Tracking information for the package returned from the customer whether it has an original or a replacement device.", + "type": "array", + "items": { "$ref": "#/definitions/TrackingInfo" }, + "readOnly": true + } + } + }, + "OrderStatus": { + "description": "Represents a single status change.", + "required": [ "status" ], + "type": "object", + "properties": { + "status": { + "description": "Status of the order as per the allowed status types.", + "enum": [ "Untracked", "AwaitingFulfilment", "AwaitingPreparation", "AwaitingShipment", "Shipped", "Arriving", "Delivered", "ReplacementRequested", "LostDevice", "Declined", "ReturnInitiated", "AwaitingReturnShipment", "ShippedBack", "CollectedAtMicrosoft" ], + "type": "string", + "x-ms-enum": { + "name": "OrderState", + "modelAsString": true + } + }, + "updateDateTime": { + "format": "date-time", + "description": "Time of status update.", + "type": "string", + "readOnly": true + }, + "comments": { + "description": "Comments related to this status change.", + "type": "string" + } + } + }, + "PeriodicTimerEventTrigger": { + "description": "Trigger details.", + "required": [ "properties", "kind" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "properties": { + "properties": { + "$ref": "#/definitions/PeriodicTimerProperties", + "description": "Periodic timer trigger properties.", + "x-ms-client-flatten": true + }, + "id": { + "description": "The path ID that uniquely identifies the object.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The object name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The hierarchical type of the object.", + "type": "string", + "readOnly": true + } + }, + "x-ms-discriminator-value": "PeriodicTimerEvent" + }, + "PeriodicTimerProperties": { + "description": "Periodic timer trigger properties.", + "required": [ "sourceInfo", "sinkInfo" ], + "type": "object", + "properties": { + "sourceInfo": { + "$ref": "#/definitions/PeriodicTimerSourceInfo", + "description": "Periodic timer details." + }, + "sinkInfo": { + "$ref": "#/definitions/RoleSinkInfo", + "description": "Role Sink information." + }, + "customContextTag": { + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module.", + "type": "string" + } + } + }, + "PeriodicTimerSourceInfo": { + "description": "Periodic timer event source.", + "required": [ "startTime", "schedule" ], + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "The time of the day that results in a valid trigger. Schedule is computed with reference to the time specified upto seconds. If timezone is not specified the time will considered to be in device timezone. The value will always be returned as UTC time.", + "type": "string" + }, + "schedule": { + "description": "Periodic frequency at which timer event needs to be raised. Supports daily, hourly, minutes, and seconds.", + "type": "string" + }, + "topic": { + "description": "Topic where periodic events are published to IoT device.", + "type": "string" + } + } + }, + "RawCertificateData": { + "description": "Raw Certificate Data.", + "required": [ "certificate" ], + "type": "object", + "properties": { + "authenticationType": { + "description": "The authentication type.", + "enum": [ "Invalid", "AzureActiveDirectory" ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "certificate": { + "description": "The base64 encoded certificate raw data.", + "type": "string" + } + } + }, + "RefreshDetails": { + "description": "Fields for tracking refresh job on the share.", + "type": "object", + "properties": { + "inProgressRefreshJobId": { + "description": "If a refresh share job is currently in progress on this share, this field indicates the ARM resource ID of that job. The field is empty if no job is in progress.", + "type": "string" + }, + "lastCompletedRefreshJobTimeInUTC": { + "format": "date-time", + "description": "Indicates the completed time for the last refresh job on this particular share, if any.This could be a failed job or a successful job.", + "type": "string" + }, + "errorManifestFile": { + "description": "Indicates the relative path of the error xml for the last refresh job on this particular share, if any. This could be a failed job or a successful job.", + "type": "string" + }, + "lastJob": { + "description": "Indicates the id of the last refresh job on this particular share,if any. This could be a failed job or a successful job.", + "type": "string" + } + } + }, + "Role": { + "description": "Compute role.", + "required": [ "kind" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "kind": { + "description": "Role type.", + "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "type": "string", + "x-ms-enum": { + "name": "RoleTypes", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "RoleList": { + "description": "Collection of all the roles on the Data Box Edge device.", + "type": "object", + "properties": { + "value": { + "description": "The Value.", + "type": "array", + "items": { "$ref": "#/definitions/Role" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "RoleSinkInfo": { + "description": "Compute role against which events will be raised.", + "required": [ "roleId" ], + "type": "object", + "properties": { + "roleId": { + "description": "Compute role ID.", + "type": "string" + } + } + }, + "SecuritySettings": { + "description": "The security settings of a device.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/SecuritySettingsProperties", + "description": "Properties of the security settings.", + "x-ms-client-flatten": true + } + } + }, + "SecuritySettingsProperties": { + "description": "The properties of security settings.", + "required": [ "deviceAdminPassword" ], + "type": "object", + "properties": { + "deviceAdminPassword": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Device administrator password as an encrypted string (encrypted using RSA PKCS #1) is used to sign into the local web UI of the device. The Actual password should have at least 8 characters that are a combination of uppercase, lowercase, numeric, and special characters." + } + } + }, + "ServiceSpecification": { + "description": "Service specification.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "Metric specification as defined by shoebox.", + "type": "array", + "items": { "$ref": "#/definitions/MetricSpecification_V1" } + } + } + }, + "Share": { + "description": "Represents a share on the Data Box Edge/Gateway device.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ShareProperties", + "description": "The share properties.", + "x-ms-client-flatten": true + } + } + }, + "ShareAccessRight": { + "description": "Specifies the mapping between this particular user and the type of access he has on shares on this device.", + "required": [ "shareId", "accessType" ], + "type": "object", + "properties": { + "shareId": { + "description": "The share ID.", + "type": "string" + }, + "accessType": { + "description": "Type of access to be allowed on the share for this user.", + "enum": [ "Change", "Read", "Custom" ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessType", + "modelAsString": true + } + } + } + }, + "ShareList": { + "description": "Collection of all the shares on the Data Box Edge/Gateway device.", + "type": "object", + "properties": { + "value": { + "description": "The list of shares.", + "type": "array", + "items": { "$ref": "#/definitions/Share" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ShareProperties": { + "description": "The share properties.", + "required": [ "shareStatus", "monitoringStatus", "accessProtocol" ], + "type": "object", + "properties": { + "description": { + "description": "Description for the share.", + "type": "string" + }, + "shareStatus": { + "description": "Current status of the share.", + "enum": [ "Offline", "Unknown", "OK", "Updating", "NeedsAttention" ], + "type": "string", + "x-ms-enum": { + "name": "ShareStatus", + "modelAsString": true + } + }, + "monitoringStatus": { + "description": "Current monitoring status of the share.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "MonitoringStatus", + "modelAsString": true + } + }, + "azureContainerInfo": { + "$ref": "#/definitions/AzureContainerInfo", + "description": "Azure container mapping for the share." + }, + "accessProtocol": { + "description": "Access protocol to be used by the share.", + "enum": [ "SMB", "NFS" ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessProtocol", + "modelAsString": true + } + }, + "userAccessRights": { + "description": "Mapping of users and corresponding access rights on the share (required for SMB protocol).", + "type": "array", + "items": { "$ref": "#/definitions/UserAccessRight" } + }, + "clientAccessRights": { + "description": "List of IP addresses and corresponding access rights on the share(required for NFS protocol).", + "type": "array", + "items": { "$ref": "#/definitions/ClientAccessRight" } + }, + "refreshDetails": { + "$ref": "#/definitions/RefreshDetails", + "description": "Details of the refresh job on this share." + }, + "shareMappings": { + "description": "Share mount point to the role.", + "type": "array", + "items": { "$ref": "#/definitions/MountPointMap" }, + "readOnly": true + }, + "dataPolicy": { + "description": "Data policy of the share.", + "enum": [ "Cloud", "Local" ], + "type": "string", + "x-ms-enum": { + "name": "DataPolicy", + "modelAsString": true + } + } + } + }, + "Sku": { + "description": "The SKU type.", + "type": "object", + "properties": { + "name": { + "description": "SKU name.", + "enum": [ "Gateway", "Edge" ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "description": "The SKU tier. This is based on the SKU name.", + "enum": [ "Standard" ], + "type": "string", + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + } + }, + "StorageAccountCredential": { + "description": "The storage account credential.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/StorageAccountCredentialProperties", + "description": "The storage account credential properties.", + "x-ms-client-flatten": true + } + } + }, + "StorageAccountCredentialList": { + "description": "The collection of storage account credentials.", + "type": "object", + "properties": { + "value": { + "description": "The value.", + "type": "array", + "items": { "$ref": "#/definitions/StorageAccountCredential" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "StorageAccountCredentialProperties": { + "description": "The storage account credential properties.", + "required": [ "alias", "sslStatus", "accountType" ], + "type": "object", + "properties": { + "alias": { + "description": "Alias for the storage account.", + "type": "string" + }, + "userName": { + "description": "Username for the storage account.", + "type": "string" + }, + "accountKey": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Encrypted storage key." + }, + "connectionString": { + "description": "Connection string for the storage account. Use this string if username and account key are not specified.", + "type": "string" + }, + "sslStatus": { + "description": "Signifies whether SSL needs to be enabled or not.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "SSLStatus", + "modelAsString": true + } + }, + "blobDomainName": { + "description": "Blob end point for private clouds.", + "type": "string" + }, + "accountType": { + "description": "Type of storage accessed on the storage account.", + "enum": [ "GeneralPurposeStorage", "BlobStorage" ], + "type": "string", + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, + "storageAccountId": { + "description": "Id of the storage account.", + "type": "string" + } + } + }, + "SymmetricKey": { + "description": "Symmetric key for authentication.", + "type": "object", + "properties": { + "connectionString": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "Connection string based on the symmetric key." + } + } + }, + "TrackingInfo": { + "description": "Tracking courier information.", + "type": "object", + "properties": { + "serialNumber": { + "description": "Serial number of the device being tracked.", + "type": "string" + }, + "carrierName": { + "description": "Name of the carrier used in the delivery.", + "type": "string" + }, + "trackingId": { + "description": "Tracking ID of the shipment.", + "type": "string" + }, + "trackingUrl": { + "description": "Tracking URL of the shipment.", + "type": "string" + } + } + }, + "Trigger": { + "description": "Trigger details.", + "required": [ "kind" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "kind": { + "description": "Trigger Kind.", + "enum": [ "FileEvent", "PeriodicTimerEvent" ], + "type": "string", + "x-ms-enum": { + "name": "TriggerEventType", + "modelAsString": true + } + } + }, + "discriminator": "kind" + }, + "TriggerList": { + "description": "Collection of all trigger on the data box edge device.", + "type": "object", + "properties": { + "value": { + "description": "The list of triggers.", + "type": "array", + "items": { "$ref": "#/definitions/Trigger" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateDownloadProgress": { + "description": "Details about the download progress of update.", + "type": "object", + "properties": { + "downloadPhase": { + "description": "The download phase.", + "enum": [ "Unknown", "Initializing", "Downloading", "Verifying" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DownloadPhase", + "modelAsString": true + } + }, + "percentComplete": { + "format": "int32", + "description": "Percentage of completion.", + "type": "integer", + "readOnly": true + }, + "totalBytesToDownload": { + "format": "double", + "description": "Total bytes to download.", + "type": "number", + "readOnly": true + }, + "totalBytesDownloaded": { + "format": "double", + "description": "Total bytes downloaded.", + "type": "number", + "readOnly": true + }, + "numberOfUpdatesToDownload": { + "format": "int32", + "description": "Number of updates to download.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesDownloaded": { + "format": "int32", + "description": "Number of updates downloaded.", + "type": "integer", + "readOnly": true + } + } + }, + "UpdateInstallProgress": { + "description": "Progress details during installation of updates.", + "type": "object", + "properties": { + "percentComplete": { + "format": "int32", + "description": "Percentage completed.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesToInstall": { + "format": "int32", + "description": "Number of updates to install.", + "type": "integer", + "readOnly": true + }, + "numberOfUpdatesInstalled": { + "format": "int32", + "description": "Number of updates installed.", + "type": "integer", + "readOnly": true + } + } + }, + "UpdateSummary": { + "description": "Details about ongoing updates and availability of updates on the device.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/UpdateSummaryProperties", + "description": "The device update information summary.", + "x-ms-client-flatten": true + } + } + }, + "UpdateSummaryProperties": { + "description": "The device update information summary.", + "type": "object", + "properties": { + "deviceVersionNumber": { + "description": "The current version of the device in format: 1.2.17312.13.\",", + "type": "string" + }, + "friendlyDeviceVersionName": { + "description": "The current version of the device in text format.", + "type": "string" + }, + "deviceLastScannedDateTime": { + "format": "date-time", + "description": "The last time when a scan was done on the device.", + "type": "string" + }, + "lastCompletedScanJobDateTime": { + "format": "date-time", + "description": "The time when the last scan job was completed (success/cancelled/failed) on the appliance.", + "type": "string" + }, + "lastCompletedDownloadJobDateTime": { + "format": "date-time", + "description": "The time when the last Download job was completed (success/cancelled/failed) on the appliance.", + "type": "string", + "readOnly": true + }, + "lastCompletedInstallJobDateTime": { + "format": "date-time", + "description": "The time when the last Install job was completed (success/cancelled/failed) on the appliance.", + "type": "string", + "readOnly": true + }, + "totalNumberOfUpdatesAvailable": { + "format": "int32", + "description": "The number of updates available for the current device version as per the last device scan.", + "type": "integer", + "readOnly": true + }, + "totalNumberOfUpdatesPendingDownload": { + "format": "int32", + "description": "The total number of items pending download.", + "type": "integer", + "readOnly": true + }, + "totalNumberOfUpdatesPendingInstall": { + "format": "int32", + "description": "The total number of items pending install.", + "type": "integer", + "readOnly": true + }, + "rebootBehavior": { + "description": "Indicates if updates are available and at least one of the updates needs a reboot.", + "enum": [ "NeverReboots", "RequiresReboot", "RequestReboot" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InstallRebootBehavior", + "modelAsString": true + } + }, + "ongoingUpdateOperation": { + "description": "The current update operation.", + "enum": [ "None", "Scan", "Download", "Install" ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "UpdateOperation", + "modelAsString": true + } + }, + "inProgressDownloadJobId": { + "description": "The job ID of the download job in progress.", + "type": "string", + "readOnly": true + }, + "inProgressInstallJobId": { + "description": "The job ID of the install job in progress.", + "type": "string", + "readOnly": true + }, + "inProgressDownloadJobStartedDateTime": { + "format": "date-time", + "description": "The time when the currently running download (if any) started.", + "type": "string", + "readOnly": true + }, + "inProgressInstallJobStartedDateTime": { + "format": "date-time", + "description": "The time when the currently running install (if any) started.", + "type": "string", + "readOnly": true + }, + "updateTitles": { + "description": "The list of updates available for install.", + "type": "array", + "items": { "type": "string" }, + "readOnly": true + }, + "totalUpdateSizeInBytes": { + "format": "double", + "description": "The total size of updates available for download in bytes.", + "type": "number", + "readOnly": true + } + } + }, + "UploadCertificateRequest": { + "description": "The upload certificate request.", + "required": [ "properties" ], + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/RawCertificateData", + "description": "The Base 64 encoded certificate raw data.", + "x-ms-client-flatten": true + } + } + }, + "UploadCertificateResponse": { + "description": "The upload registration certificate response.", + "required": [ "resourceId", "aadAuthority", "aadTenantId", "servicePrincipalClientId", "servicePrincipalObjectId", "azureManagementEndpointAudience" ], + "type": "object", + "properties": { + "authType": { + "description": "Specifies authentication type.", + "enum": [ "Invalid", "AzureActiveDirectory" ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resource ID of the Data Box Edge/Gateway device.", + "type": "string" + }, + "aadAuthority": { + "description": "Azure Active Directory tenant authority.", + "type": "string" + }, + "aadTenantId": { + "description": "Azure Active Directory tenant ID.", + "type": "string" + }, + "servicePrincipalClientId": { + "description": "Azure Active Directory service principal client ID.", + "type": "string" + }, + "servicePrincipalObjectId": { + "description": "Azure Active Directory service principal object ID.", + "type": "string" + }, + "azureManagementEndpointAudience": { + "description": "The azure management endpoint audience.", + "type": "string" + } + } + }, + "User": { + "description": "Represents a user who has access to one or more shares on the Data Box Edge/Gateway device.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "properties": { + "properties": { + "$ref": "#/definitions/UserProperties", + "description": "The storage account credential properties.", + "x-ms-client-flatten": true + } + } + }, + "UserAccessRight": { + "description": "The mapping between a particular user and the access type on the SMB share.", + "required": [ "userId", "accessType" ], + "type": "object", + "properties": { + "userId": { + "description": "User ID (already existing in the device).", + "type": "string" + }, + "accessType": { + "description": "Type of access to be allowed for the user.", + "enum": [ "Change", "Read", "Custom" ], + "type": "string", + "x-ms-enum": { + "name": "ShareAccessType", + "modelAsString": true + } + } + } + }, + "UserList": { + "description": "Collection of users.", + "type": "object", + "properties": { + "value": { + "description": "The list of users.", + "type": "array", + "items": { "$ref": "#/definitions/User" }, + "readOnly": true + }, + "nextLink": { + "description": "Link to the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "UserProperties": { + "description": "The user properties.", + "type": "object", + "properties": { + "encryptedPassword": { + "$ref": "#/definitions/AsymmetricEncryptedSecret", + "description": "The password details." + }, + "shareAccessRights": { + "description": "List of shares that the user has rights on. This field should not be specified during user creation.", + "type": "array", + "items": { "$ref": "#/definitions/ShareAccessRight" } + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version.", + "required": true, + "type": "string" + }, + "locationParameter": { + "name": "location", + "in": "path", + "description": "The location of the resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { "user_impersonation": "impersonate your user account." } + } + }, + "security": [ { "azure_auth": [ "user_impersonation" ] } ] +} \ No newline at end of file diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGet.json new file mode 100644 index 000000000000..b3ff6f74de1e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "title": "Could not scan for updates. Error message : 'An internal error has occurred. Please contact Microsoft Support.'.", + "alertType": "UpdateScanFailedEvent", + "appearedAtDateTime": "2018-12-18T02:18:51.4270267Z", + "recommendation": "Resolve the error : An internal error has occurred. Please contact Microsoft Support.", + "severity": "Critical", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 1 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "type": "dataBoxEdgeDevices/alerts" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGetAllInDevice.json new file mode 100644 index 000000000000..61c338e30413 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/AlertGetAllInDevice.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "title": "Device password has changed", + "alertType": "PasswordChangedEvent", + "appearedAtDateTime": "2018-12-18T02:29:15.2325577Z", + "recommendation": "The device administrator password has changed. This is a required action as part of the first time device setup or regular password reset. No further action is required.", + "severity": "Informational", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 2 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/83eccd0b-134b-40b0-ad62-b5f124d03790", + "name": "83eccd0b-134b-40b0-ad62-b5f124d03790", + "type": "dataBoxEdgeDevices/alerts" + }, + { + "properties": { + "title": "Could not scan for updates. Error message : 'An internal error has occurred. Please contact Microsoft Support.'.", + "alertType": "UpdateScanFailedEvent", + "appearedAtDateTime": "2018-12-18T02:18:51.4270267Z", + "recommendation": "Resolve the error : An internal error has occurred. Please contact Microsoft Support.", + "severity": "Critical", + "errorDetails": { + "errorCode": "", + "errorMessage": "", + "occurrences": 1 + }, + "detailedInformation": {} + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/alerts/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "type": "dataBoxEdgeDevices/alerts" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleDelete.json new file mode 100644 index 000000000000..78bb837a56fe --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGet.json new file mode 100644 index 000000000000..5e29a535b25d --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGetAllInDevice.json new file mode 100644 index 000000000000..712a136b93d1 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthScheduleGetAllInDevice.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthSchedulePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthSchedulePut.json new file mode 100644 index 000000000000..9f8d013a7548 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/BandwidthSchedulePut.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "bandwidth-1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "start": "0:0:0", + "stop": "13:59:0", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "start": "00:00:00", + "stop": "13:59:00", + "rateInMbps": 100, + "days": [ + "Sunday", + "Monday" + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/bandwidthSchedules/bandwidth-1", + "name": "bandwidth-1", + "type": "dataBoxEdgeDevices/bandwidthSchedules" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceDelete.json new file mode 100644 index 000000000000..30098478db9b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByName.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByName.json new file mode 100644 index 000000000000..936d7e305ffc --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByName.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-12-16T08%3A03%3A27.61Z'\"_W/\"datetime'2018-12-16T08%3A03%3A27.653Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json new file mode 100644 index 000000000000..fe8ff534f222 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-12-17T10%3A31%3A06.493Z'\"_W/\"datetime'2018-12-17T10%3A31%3A06.597Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-09-27T09%3A45%3A09.15Z'\"_W/\"datetime'2018-09-27T09%3A45%3A09.177Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice2", + "name": "testedgedevice2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-12-17T10%3A31%3A00.293Z'\"_W/\"datetime'2018-12-17T10%3A31%3A00.34Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice3", + "name": "testedgedevice3", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetBySubscription.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetBySubscription.json new file mode 100644 index 000000000000..be45219e8391 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDeviceGetBySubscription.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-12-17T10%3A31%3A06.493Z'\"_W/\"datetime'2018-12-17T10%3A31%3A06.597Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-09-27T09%3A45%3A09.15Z'\"_W/\"datetime'2018-09-27T09%3A45%3A09.177Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice2", + "name": "testedgedevice2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "\"W/\"datetime'2018-12-17T10%3A31%3A00.293Z'\"_W/\"datetime'2018-12-17T10%3A31%3A00.34Z'\"\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice3", + "name": "testedgedevice3", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePatch.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePatch.json new file mode 100644 index 000000000000..098b67c414ad --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePatch.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "tags": { + "Key1": "value1", + "Key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "location": "WUS", + "tags": { + "Key1": "value1", + "Key2": "value2" + }, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "etag": "W/\"datetime'2018-12-19T06%3A33%3A24.983Z'\"_W/\"datetime'2018-12-19T06%3A33%3A25.013Z'\"", + "properties": { + "dataBoxEdgeDeviceStatus": "ReadyToSetup", + "deviceType": "DataBoxEdgeDevice", + "deviceLocalCapacity": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePut.json new file mode 100644 index 000000000000..064228b4aeeb --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DataBoxEdgeDevicePut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "DataBoxEdgeDevice": { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "location": "WUS", + "tags": {}, + "sku": { + "name": "Edge", + "tier": "Standard" + }, + "name": "testedgedevice" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DownloadUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DownloadUpdatesPost.json new file mode 100644 index 000000000000..99dd3ac094a5 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/DownloadUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ExtendedInfoPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ExtendedInfoPost.json new file mode 100644 index 000000000000..5c83252bb767 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ExtendedInfoPost.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceKey": "3482840729935603111", + "encryptionKeyThumbprint": "", + "encryptionKey": "" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice", + "name": "testedgedevice", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/InstallUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/InstallUpdatesPost.json new file mode 100644 index 000000000000..99dd3ac094a5 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/InstallUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/JobsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/JobsGet.json new file mode 100644 index 000000000000..3e5f7bdf7204 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/JobsGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/id/locations/westus/jobs/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "status": "Succeeded", + "startTime": "2018-12-18T02:18:51.4270267Z", + "endTime": "2018-12-18T03:18:51.4270267Z", + "percentComplete": 100, + "properties": { + "jobType": "DownloadUpdates", + "currentStage": "Success" + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NetworkSettingsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NetworkSettingsGet.json new file mode 100644 index 000000000000..d73518fff11e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NetworkSettingsGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "networkAdapters": [ + { + "adapterId": "{47D0D0EC-AA8A-4221-AA2A-355B58082BA5}", + "adapterPosition": { + "networkGroup": "NonRDMA", + "port": 0 + }, + "index": 1, + "nodeId": "3fd54d9e-f7a0-45bf-bdf1-39b0977d1984", + "networkAdapterName": "DATA1", + "label": "DATA1", + "macAddress": "00155D4E265B", + "linkSpeed": 10000000000, + "status": "Inactive", + "rdmaStatus": "Incapable", + "dhcpStatus": "Disabled", + "ipv4Configuration": { + "ipAddress": "10.150.78.56", + "subnet": "255.255.252.0", + "gateway": "10.150.76.1" + }, + "ipv6Configuration": { + "ipAddress": "2404:f801:4800:1e:d5c6:50a1:465b:1bbf", + "prefixLength": 64, + "gateway": "fe80::12f3:11ff:fe36:994b%5" + }, + "ipv6LinkLocalAddress": "fe80::d5c6:50a1:465b:1bbf%5", + "dnsServers": [ + "10.50.50.50", + "10.50.10.50" + ] + } + ] + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/networkSettings/default", + "name": "default", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/networkSettings" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NodeGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NodeGetAllInDevice.json new file mode 100644 index 000000000000..9e2bc2fa1004 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/NodeGetAllInDevice.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": + { + "value": [ + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1D6QHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", + "name": "1D6QHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + }, + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1DCNHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", + "name": "1DCNHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsGet.json new file mode 100644 index 000000000000..29ca0336a812 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsGet.json @@ -0,0 +1,675 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "List share users", + "description": "Lists or gets the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "List share users", + "description": "Lists or gets the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "Creates or updates share users", + "description": "Creates or updates the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "share users", + "operation": "Delete share users", + "description": "Deletes the share users" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "List bandwidth schedules", + "description": "Lists or gets the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "List bandwidth schedules", + "description": "Lists or gets the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "Creates or updates bandwidth schedules", + "description": "Creates or updates the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "bandwidth schedules", + "operation": "Delete bandwidth schedules", + "description": "Deletes the bandwidth schedules" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "List ArmApiRes_roles", + "description": "Lists or gets the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "List ArmApiRes_roles", + "description": "Lists or gets the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "Creates or updates ArmApiRes_roles", + "description": "Creates or updates the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "ArmApiRes_roles", + "operation": "Delete ArmApiRes_roles", + "description": "Deletes the ArmApiRes_roles" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "List shares", + "description": "Lists or gets the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "List shares", + "description": "Lists or gets the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "Creates or updates shares", + "description": "Creates or updates the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/refresh/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "ArmApiOp_action_refresh_shares", + "description": "ArmApiDesc_action_refresh_shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "shares", + "operation": "Delete shares", + "description": "Deletes the shares" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/uploadCertificate/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Upload certificates", + "description": "Upload certificate for device registration" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Creates or updates Data Box Edge devices", + "description": "Creates or updates the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Delete Data Box Edge devices", + "description": "Deletes the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "List Data Box Edge devices", + "description": "Lists or gets the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Creates or updates Data Box Edge devices", + "description": "Creates or updates the Data Box Edge devices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/getExtendedInformation/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "ArmApiOp_action_getExtendedInformation_dataBoxEdgeDevices", + "description": "ArmApiDesc_action_getExtendedInformation_dataBoxEdgeDevices" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/extendedInformation/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Gets resource extended information", + "description": "Retrieves resource extended information" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/networkSettings/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Device network settings", + "operation": "List Device network settings", + "description": "Lists or gets the Device network settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/securitySettings/update/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Device security settings", + "operation": "Update security settings", + "description": "Update security settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/updateSummary/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "update summary", + "operation": "List update summary", + "description": "Lists or gets the update summary" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/scanForUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Scan for updates", + "description": "Scan for updates" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/downloadUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Download Updates", + "description": "Download Updates in device" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/installUpdates/action", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge devices", + "operation": "Install Updates", + "description": "Install Updates on device" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/jobs/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "jobs", + "operation": "List jobs", + "description": "Lists or gets the jobs" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "Creates or updates storage account credentials", + "description": "Creates or updates the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "List storage account credentials", + "description": "Lists or gets the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "List storage account credentials", + "description": "Lists or gets the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials/delete", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "storage account credentials", + "operation": "Delete storage account credentials", + "description": "Deletes the storage account credentials" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/alerts/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "alerts", + "operation": "List alerts", + "description": "Lists or gets the alerts" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/alerts/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "alerts", + "operation": "List alerts", + "description": "Lists or gets the alerts" + }, + "origin": "user" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Read Data Box Edge device metric definition", + "description": "Gets the available Data Box Edge device level metrics" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "NICReadThroughput", + "displayName": "Read Throughput (Network)", + "displayDescription": "The read throughput of the network interface on the device in the reporting period for all volumes in the gateway.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "InstanceName", + "displayName": "Name", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "NICWriteThroughput", + "displayName": "Write Throughput (Network)", + "displayDescription": "The write throughput of the network interface on the device in the reporting period for all volumes in the gateway.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "InstanceName", + "displayName": "Name", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudReadThroughputPerShare", + "displayName": "Cloud Download Throughput (Share)", + "displayDescription": "The download throughput to Azure from a share during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudUploadThroughputPerShare", + "displayName": "Cloud Upload Throughput (Share)", + "displayDescription": "The upload throughput to Azure from a share during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "BytesUploadedToCloudPerShare", + "displayName": "Cloud Bytes Uploaded (Share)", + "displayDescription": "The total number of bytes that is uploaded to Azure from a share during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [ + { + "name": "Share", + "displayName": "Share", + "toBeExportedForShoebox": true + } + ], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT1M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "TotalCapacity", + "displayName": "Total Capacity", + "displayDescription": "Total Capacity", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Capacity", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "AvailableCapacity", + "displayName": "Available Capacity", + "displayDescription": "The available capacity in bytes during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Capacity", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudUploadThroughput", + "displayName": "Cloud Upload Throughput", + "displayDescription": "The cloud upload throughput during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CloudReadThroughput", + "displayName": "Cloud Read Throughput", + "displayDescription": "The cloud download throughput during the reporting period.", + "unit": "BytesPerSecond", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "BytesUploadedToCloud", + "displayName": "Cloud Bytes Uploaded (Device)", + "displayDescription": "The total number of bytes that is uploaded to Azure from a device during the reporting period.", + "unit": "Bytes", + "aggregationType": "Average", + "dimensions": [], + "fillGapWithZero": false, + "category": "Transaction", + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT1H" + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Write diagnostics setting", + "description": "Creates or updates the diagnostics setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft.DataBoxEdge", + "resource": "Data Box Edge device", + "operation": "Read diagnostics setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsStatusGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsStatusGet.json new file mode 100644 index 000000000000..57a960ec5684 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OperationsStatusGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/id/locations/westus/operationsStatus/159a00c7-8543-4343-9435-263ac87df3bb", + "name": "159a00c7-8543-4343-9435-263ac87df3bb", + "status": "Succeeded", + "startTime": "2018-12-18T02:18:51.4270267Z", + "endTime": "2018-12-18T03:18:51.4270267Z", + "percentComplete": 100, + "properties": { + "jobType": "DownloadUpdates", + "currentStage": "Success" + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderDelete.json new file mode 100644 index 000000000000..30098478db9b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGet.json new file mode 100644 index 000000000000..52836d3016b4 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGetAllInDevice.json new file mode 100644 index 000000000000..128e6415ccbb --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderGetAllInDevice.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-03-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderPut.json new file mode 100644 index 000000000000..4cf5d0686488 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/OrderPut.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "order": { + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/orders/default", + "name": "default", + "type": "dataBoxEdgeDevices/orders", + "properties": { + "contactInformation": { + "contactPerson": "John Mcclane", + "companyName": "Microsoft", + "phone": "(800) 426-9400", + "emailList": [ + "john@microsoft.com" + ] + }, + "shippingAddress": { + "addressLine1": "Microsoft Corporation", + "addressLine2": "One Microsoft Way", + "addressLine3": "Redmond", + "postalCode": "98052", + "city": "WA", + "state": "WA", + "country": "USA" + }, + "currentStatus": { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "" + }, + "orderHistory": [ + { + "status": "Untracked", + "updateDateTime": "2018-12-10T07:59:05.847Z", + "comments": "lorem ipsum" + } + ], + "serialNumber": "UDS123NSDA123", + "deliveryTrackingInfo": [], + "returnTrackingInfo": [] + } + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleDelete.json new file mode 100644 index 000000000000..7a52d9d40904 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGet.json new file mode 100644 index 000000000000..8f20c6136683 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "kind": "IOT", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGetAllInDevice.json new file mode 100644 index 000000000000..ee6bd54a01d4 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RoleGetAllInDevice.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "kind": "IOT", + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RolePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RolePut.json new file mode 100644 index 000000000000..45e723d0b488 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/RolePut.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "IoTRole1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "role": { + "kind": "IOT", + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": { + "connectionString": { + "value": "Encrypted<>", + "encryptionCertThumbprint": "348586569999244", + "encryptionAlgorithm": "AES256" + } + } + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": { + "connectionString": { + "value": "Encrypted<>", + "encryptionCertThumbprint": "1245475856069999244", + "encryptionAlgorithm": "AES256" + } + } + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "kind": "IOT", + "properties": { + "hostPlatform": "Linux", + "ioTDeviceDetails": { + "deviceId": "iotdevice", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "ioTEdgeDeviceDetails": { + "deviceId": "iotEdge", + "ioTHostHub": "iothub.azure-devices.net", + "authentication": { + "symmetricKey": {} + } + }, + "shareMappings": [], + "roleStatus": "Enabled" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/IoTRole1", + "name": "IoTRole1", + "type": "dataBoxEdgeDevices/roles" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACDelete.json new file mode 100644 index 000000000000..5b4a366c54d4 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGet.json new file mode 100644 index 000000000000..fdbac8349cd6 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "name": "sac1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGetAllInDevice.json new file mode 100644 index 000000000000..7d1a0e0c7b20 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACGetAllInDevice.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "alias": "sac1128180128323", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "GeneralPurposeStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1128180128323", + "name": "sac1128180128323", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + }, + { + "properties": { + "alias": "sac1128180128312", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1128180128312", + "name": "sac1128180128312", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACPut.json new file mode 100644 index 000000000000..f7b702c46441 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SACPut.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "sac1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "storageAccountCredential": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "accountKey": { + "value": "lAeZEYi6rNP1/EyNaVUYmTSZEYyaIaWmwUsGwek0+xiZj54GM9Ue9/UA2ed/ClC03wuSit2XzM/cLRU5eYiFBwks23rGwiQOr3sruEL2a74EjPD050xYjA6M1I2hu/w2yjVHhn5j+DbXS4Xzi+rHHNZK3DgfDO3PkbECjPck+PbpSBjy9+6Mrjcld5DIZhUAeMlMHrFlg+WKRKB14o/og56u5/xX6WKlrMLEQ+y6E18dUwvWs2elTNoVO8PBE8SM/CfooX4AMNvaNdSObNBPdP+F6Lzc556nFNWXrBLRt0vC7s9qTiVRO4x/qCNaK/B4y7IqXMllwQFf4Np9UQ2ECA==", + "encryptionCertThumbprint": "2A9D8D6BE51574B5461230AEF02F162C5F01AD31", + "encryptionAlgorithm": "AES256" + }, + "sslStatus": "Disabled", + "accountType": "BlobStorage" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "alias": "sac1", + "userName": "cisbvt", + "sslStatus": "Disabled", + "accountType": "BlobStorage" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "name": "sac1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ScanForUpdatesPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ScanForUpdatesPost.json new file mode 100644 index 000000000000..99dd3ac094a5 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ScanForUpdatesPost.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SecuritySettingsUpdatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SecuritySettingsUpdatePost.json new file mode 100644 index 000000000000..1eafbf8164be --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SecuritySettingsUpdatePost.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "AzureVM", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "securitySettings": { + "properties": { + "deviceAdminPassword": { + "value": "jJ5MvXa/AEWvwxviS92uCjatCXeyLYTy8jx/k105MjQRXT7i6Do8qpEcQ8d+OBbwmQTnwKW0CYyzzVRCc0uZcPCf6PsWtP4l6wvcKGAP66PwK68eEkTUOmp+wUHc4hk02kWmTWeAjBZkuDBP3xK1RnZo95g2RE4i1UgKNP5BEKCLd71O104DW3AWW41mh9XLWNOaxw+VjQY7wmvlE6XkvpkMhcGuha2u7lx8zi9ZkcMvJVYDYK36Fb/K3KhBAmDjjDmVq04jtBlcSTXQObt0nlj4BwGGtdrpeIpr67zqr5i3cPm6e6AleIaIhp6sI/uyGSMiT3oev2eg49u2ii7kVA==", + "encryptionAlgorithm": "AES256", + "encryptionCertThumbprint": "7DCBDFC44ED968D232C9A998FC105B5C70E84BE0" + } + } + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareDelete.json new file mode 100644 index 000000000000..433488a415a3 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGet.json new file mode 100644 index 000000000000..42823d1f7022 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGetAllInDevice.json new file mode 100644 index 000000000000..d47efb5dda80 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareGetAllInDevice.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SharePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SharePut.json new file mode 100644 index 000000000000..ffc6d9f1494a --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/SharePut.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "share": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Enabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "dataPolicy": "Cloud" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "", + "shareStatus": "Online", + "monitoringStatus": "Disabled", + "azureContainerInfo": { + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/sac1", + "containerName": "testContainerSMB", + "dataFormat": "BlockBlob" + }, + "accessProtocol": "SMB", + "userAccessRights": [ + { + "userId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "accessType": "Change" + } + ], + "clientAccessRights": [], + "refreshDetails": {}, + "shareMappings": [], + "dataPolicy": "Cloud" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/smbshare", + "name": "smbshare", + "type": "dataBoxEdgeDevices/shares" + } + }, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareRefreshPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareRefreshPost.json new file mode 100644 index 000000000000..2f3db00e9da6 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/ShareRefreshPost.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "smbshare", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerDelete.json new file mode 100644 index 000000000000..2c81b5b871bd --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerDelete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGet.json new file mode 100644 index 000000000000..708f323dc965 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGetAllInDevice.json new file mode 100644 index 000000000000..84d6dfc12bac --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerGetAllInDevice.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerPut.json new file mode 100644 index 000000000000..dafd8e8f9a3e --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/TriggerPut.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "trigger1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "trigger": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "kind": "FileEvent" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "customContextTag": "CustomContextTags-1235346475", + "sourceInfo": { + "shareId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/shares/share1" + }, + "sinkInfo": { + "roleId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/roles/role1" + } + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/triggers/trigger1", + "name": "trigger1", + "type": "dataBoxEdgeDevices/triggers", + "kind": "FileEvent" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryPost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UpdateSummaryGet.json similarity index 91% rename from specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryPost.json rename to specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UpdateSummaryGet.json index 41af3b1156bf..dc80ca38c9a0 100644 --- a/specification/edgegateway/resource-manager/Microsoft.DataBoxEdge/stable/2019-03-01/examples/UpdateSummaryPost.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UpdateSummaryGet.json @@ -1,15 +1,9 @@ { "parameters": { - "api-version": "2019-03-01", + "api-version": "2019-07-01", "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "200" - ], "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], @@ -31,7 +25,7 @@ "totalNumberOfUpdatesAvailable": 0, "totalNumberOfUpdatesPendingDownload": 0, "totalNumberOfUpdatesPendingInstall": 0, - "rebootRequiredForInstall": false, + "rebootBehavior": "NeverReboots", "ongoingUpdateOperation": "None", "totalUpdateSizeInBytes": 0.0 }, diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UploadCertificatePost.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UploadCertificatePost.json new file mode 100644 index 000000000000..8b8346584279 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UploadCertificatePost.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "parameters": { + "properties": { + "certificate": "MIIC9DCCAdygAwIBAgIQWJae7GNjiI9Mcv/gJyrOPTANBgkqhkiG9w0BAQUFADASMRAwDgYDVQQDDAdXaW5kb3dzMB4XDTE4MTEyNzAwMTA0NVoXDTIxMTEyODAwMTA0NVowEjEQMA4GA1UEAwwHV2luZG93czCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKxkRExqxf0qH1avnyORptIbRC2yQwqe3EIbJ2FPKr5jtAppGeX/dGKrFSnX+7/0HFr77aJHafdpEAtOiLyJ4zCAVs0obZCCIq4qJdmjYUTU0UXH/w/YzXfQA0d9Zh9AN+NJBX9xj05NzgsT24fkgsK2v6mWJQXT7YcWAsl5sEYPnx1e+MrupNyVSL/RUJmrS+etJSysHtFeWRhsUhVAs1DD5ExJvBLU3WH0IsojEvpXcjrutB5/MDQNrd/StGI6WovoSSPH7FyT9tgERx+q+Yg3YUGzfaIPCctlrRGehcdtzdNoKd0rsX62yCq0U6POoSfwe22NJu41oAUMd7e6R8cCAwEAAaNGMEQwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFDd0VxnS3LnMIfwc7xW4b4IZWG5GMA4GA1UdDwEB/wQEAwIFIDANBgkqhkiG9w0BAQUFAAOCAQEAPQRby2u9celvtvL/DLEb5Vt3/tPStRQC5MyTD62L5RT/q8E6EMCXVZNkXF5WlWucLJi/18tY+9PNgP9xWLJh7kpSWlWdi9KPtwMqKDlEH8L2TnQdjimt9XuiCrTnoFy/1X2BGLY/rCaUJNSd15QCkz2xeW+Z+YSk2GwAc/A/4YfNpqSIMfNuPrT76o02VdD9WmJUA3fS/HY0sU9qgQRS/3F5/0EPS+HYQ0SvXCK9tggcCd4O050ytNBMJC9qMOJ7yE0iOrFfOJSCfDAuPhn/rHFh79Kn1moF+/CE+nc0/2RPiLC8r54/rt5dYyyxJDfXg0a3VrrX39W69WZGW5OXiw==" + } + } + }, + "responses": { + "200": { + "body": { + "authType": "AzureActiveDirectory", + "resourceId": "392799901267771", + "aadAuthority": "https://login.windows.net", + "aadTenantId": "100b019d-4626-4a9e-a83c-9cff8fe41909", + "servicePrincipalClientId": "ffd8a688-82b1-4e5a-a4c1-7ede8c928e68", + "servicePrincipalObjectId": "cef6d40c-24e6-4a6f-bb9e-3ec60b4adec4", + "azureManagementEndpointAudience": "https://wus-bvtgateway.ext.trafficmanager.net/" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserDelete.json new file mode 100644 index 000000000000..22bd1b53ce52 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGet.json new file mode 100644 index 000000000000..6ccb8d9dbb4b --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "properties": {}, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + }, + "202": { + "body": "" + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGetAllInDevice.json new file mode 100644 index 000000000000..160d33d1b9a0 --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserGetAllInDevice.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": {}, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", + "name": "user2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + }, + { + "properties": {}, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserPut.json new file mode 100644 index 000000000000..38b0e0cf0b1f --- /dev/null +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-07-01/examples/UserPut.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "GroupForEdgeAutomation", + "deviceName": "testedgedevice", + "name": "user1", + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "200" + ], + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ], + "user": { + "properties": { + "encryptedPassword": { + "value": "Password@1", + "encryptionAlgorithm": "None", + "encryptionCertThumbprint": "blah" + }, + "shareAccessRights": [] + } + } + }, + "responses": { + "200": { + "body": { + "properties": {}, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", + "name": "user1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + } + }, + "202": {} + } +} diff --git a/specification/edgegateway/resource-manager/readme.go.md b/specification/databoxedge/resource-manager/readme.go.md similarity index 57% rename from specification/edgegateway/resource-manager/readme.go.md rename to specification/databoxedge/resource-manager/readme.go.md index 4498df3171ab..0d0624ae1590 100644 --- a/specification/edgegateway/resource-manager/readme.go.md +++ b/specification/databoxedge/resource-manager/readme.go.md @@ -5,7 +5,7 @@ These settings apply only when `--go` is specified on the command line. ```yaml $(go) go: license-header: MICROSOFT_APACHE_NO_VERSION - namespace: edgegateway + namespace: databoxedge clear-output-folder: true ``` @@ -13,7 +13,17 @@ go: ```yaml $(go) && $(multiapi) batch: - - tag: package-2019-03 + - tag: package-2019-07 + - tag: package-2019-03 +``` + +### Tag: package-2019-07 and go + +These settings apply only when `--tag=package-2019-07 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2019-07' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-07-01/$(namespace) ``` ### Tag: package-2019-03 and go @@ -23,4 +33,4 @@ Please also specify `--go-sdk-folder= see https://aka.ms/autorest @@ -8,7 +8,7 @@ This is the AutoRest configuration file for DataBox. --- ## Getting Started -To build the SDK for DataBox, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: +To build the SDK for DataBox Edge, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -22,22 +22,29 @@ To see additional help and options, run: ### Basic Information -These are the global settings for the DataBox API. +These are the global settings for the DataBox Edge API. ``` yaml openapi-type: arm -tag: package-2019-03 +tag: package-2019-07 ``` +### 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: +- Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.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: -- Microsoft.DataBoxEdge/stable/2019-03-01/edgegateway.json +- Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json ``` - --- # Code Generation @@ -56,7 +63,7 @@ swagger-to-sdk: - repo: azure-sdk-for-java - repo: azure-sdk-for-ruby after_scripts: - - bundle install && rake arm:regen_all_profiles['azure_mgmt_edgegateway'] + - bundle install && rake arm:regen_all_profiles['azure_mgmt_databoxedge'] ``` ## C# @@ -68,9 +75,9 @@ Please also specify `--csharp-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.databoxedge.v2019_07_01 + output-folder: $(azure-libraries-for-java-folder)/databoxedge/resource-manager/v2019_07_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2019-03 and java @@ -140,8 +162,8 @@ Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-07' && $(ruby) +namespace: "Azure::DataBoxEdge::Mgmt::V2019_07_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databoxedge/lib +``` + +### Tag: package-2019-03 and ruby + +These settings apply only when `--tag=package-2019-03 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-03' && $(ruby) +namespace: "Azure::DataBoxEdge::Mgmt::V2019_03_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databoxedge/lib +``` \ No newline at end of file diff --git a/specification/edgegateway/resource-manager/readme.typescript.md b/specification/databoxedge/resource-manager/readme.typescript.md similarity index 67% rename from specification/edgegateway/resource-manager/readme.typescript.md rename to specification/databoxedge/resource-manager/readme.typescript.md index 4efe2562d442..b7be35c182a7 100644 --- a/specification/edgegateway/resource-manager/readme.typescript.md +++ b/specification/databoxedge/resource-manager/readme.typescript.md @@ -7,8 +7,8 @@ Please also specify `--typescript-sdks-folder=`. - -``` yaml $(tag) == 'package-2019-03' && $(ruby) -namespace: "Azure::EdgeGateway::Mgmt::V2019_03_01" -output-folder: $(ruby-sdks-folder)/management/azure_mgmt_edgegateway/lib -``` diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json index 525a5eacaff5..1666fd6636b6 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json @@ -21,7 +21,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, @@ -70,7 +70,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, @@ -118,7 +118,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json index 34a87cee468d..4357adb437d4 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json @@ -29,7 +29,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json index b489bcc1779d..3c85327e70e2 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json @@ -29,7 +29,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json index 06396f3dc97f..05d7ba2d83e9 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json @@ -30,7 +30,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json index 54c299513b12..7e655a7d09be 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json @@ -38,7 +38,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json index 4645ef06e0ac..6db9627e3570 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreate.json @@ -21,7 +21,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, @@ -70,7 +70,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, @@ -118,7 +118,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json index f7cdcacd09d6..c71986e8318a 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceCreateMinimum.json @@ -37,7 +37,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": false }, @@ -71,7 +71,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": false }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json index 887f172b72d7..751e529c4332 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceGet.json @@ -29,7 +29,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json index c0bd8d213ec5..79b8d20dd559 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceList.json @@ -29,7 +29,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json index 746c27cb480d..22fd6b0b2d68 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServiceListByResourceGroup.json @@ -30,7 +30,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json index 00117dc15baa..9462f071de1b 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/examples/ServicePatch.json @@ -38,7 +38,7 @@ "offerThroughput": 1000 }, "authenticationConfiguration": { - "authority": "https://login.microsoftonline.com/common", + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", "audience": "https://azurehealthcareapis.com", "smartProxyEnabled": true }, diff --git a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json index 38725e99bda6..81c09069d9ce 100644 --- a/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json +++ b/specification/imds/data-plane/Microsoft.InstanceMetadataService/stable/2019-08-01/imds.json @@ -586,7 +586,7 @@ "properties": { "caching": { "type": "string", - "description": "This is the the caching requirements." + "description": "This is the caching requirements." }, "createOption": { "type": "string", @@ -641,7 +641,7 @@ "properties": { "caching": { "type": "string", - "description": "This is the the caching requirements." + "description": "This is the caching requirements." }, "createOption": { "type": "string", diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..ed474cfde17b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/checkNameAvailability.json new file mode 100644 index 000000000000..d0d499febee2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..236099b95b9f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + }, + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..c3e2ac35584c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certverify.json new file mode 100644 index 000000000000..24dd21a36dde --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..4bfe5bc0ea7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createOrUpdate.json @@ -0,0 +1,226 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..7ee0df729600 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_createconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_delete.json new file mode 100644 index 000000000000..034c30188140 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_delete.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..1e400b9d42e0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..ee995769855c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..614b42c8b158 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_get.json new file mode 100644 index 000000000000..265d57157df6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_get.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "deviceStreams": { + "streamingEndpoints": [ + "https://streams.azure-devices-int.net:9443" + ] + }, + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ] + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..6cd5bc2aeb1e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getcertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..7ee0df729600 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getjob.json new file mode 100644 index 000000000000..9f0a4a307044 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getkey.json new file mode 100644 index 000000000000..8189888c56f8 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getskus.json new file mode 100644 index 000000000000..2b09b5c130db --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_importdevices.json new file mode 100644 index 000000000000..9306e3f33850 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..296d1ff6fa7d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbyrg.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..2255750d038d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listbysubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..f957905e1f7b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listcertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..9de7cdc792db --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listjobs.json new file mode 100644 index 000000000000..b403ae4af2e0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listkeys.json new file mode 100644 index 000000000000..d3aeba925342 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "DinqxWW+s814W2Pc3dLxleelksqSYGy8Jfymt8J7a4c=", + "secondaryKey": "5G8KgJ9Wx2T0f6HRIn25TgYcFmJnBSivawNaHssiP9Y=", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "o/9gPc0oD8LY/r2lRurgl9U/sKFcL2c/tmFLKAiz+e0=", + "secondaryKey": "YOeBMHnYP95vH+ykR8OeapnhS6W8raMsXOdNFwqg4lg=", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "h2d4mPxy6jPCWX6mO+katV9QPNJivzt4aFq0iGVc1A8=", + "secondaryKey": "3TdcalZNTB7BZHl88LGsG1Z5T6+ElEODunrs1vylwGg=", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "tyNRcaI38fXL+gQTjCmrVZGTP4YFF7uACk7pppWLWzY=", + "secondaryKey": "6P6DXOp0W3HO5/IotzcPS1kx7PHiOdesaND07Im5cYI=", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_operations.json new file mode 100644 index 000000000000..af4d1eac49e8 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2019-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_patch.json new file mode 100644 index 000000000000..c3d6782f9430 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_patch.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + }, + "enrichments": [] + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..55a67bf76cac --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..2a241288bf29 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_routingendpointhealth.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..fe6b6a124464 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testallroutes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": "App Properties", + "systemProperties": "System Properties" + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..175008f99242 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_testnewroute.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": "App Properties", + "systemProperties": "System Properties" + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_usages.json new file mode 100644 index 000000000000..fb221d30e4cc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-07-01-preview", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json new file mode 100644 index 000000000000..001208137980 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/preview/2019-07-01-preview/iothub.json @@ -0,0 +1,3531 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-07-01-preview", + "title": "iotHubClient", + "description": "Use this API to manage the IoT hubs in your Azure subscription.", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "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.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/iothub_operations.json" + } + }, + "operationId": "Operations_List", + "description": "Lists all of the available IoT Hub REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of an IoT hub", + "description": "Get the non-security related metadata of an IoT hub.", + "operationId": "IotHubResource_Get", + "x-ms-examples": { + "IotHubResource_Get": { + "$ref": "./examples/iothub_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT hub. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of an IoT hub.", + "description": "Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manual Failover Fail over", + "description": "Perform manual fail over of given hub", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "IotHub to fail over", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be a azure DR pair", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running Manual failover operation completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "deviceStreams": { + "description": "The device streams properties of iothub.", + "type": "object", + "properties": { + "streamingEndpoints": { + "description": "List of Device Streams Endpoints.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + }, + "enrichments": { + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/iotmsgenrich", + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name", + "connectionString" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "connectionString", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "EnrichmentProperties": { + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints.", + "type": "object", + "properties": { + "key": { + "description": "The key or name for the enrichment property.", + "type": "string" + }, + "value": { + "description": "The value for the enrichment property.", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints for which the enrichment is applied to the message.", + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "key", + "value", + "endpointNames" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "Azure Geo Regions", + "type": "string" + }, + "role": { + "description": "Specific Role assigned to this location", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json index ec82d40d0470..191d7c9f3bca 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2019-03-22/iothub.json @@ -3424,7 +3424,7 @@ "type": "string" }, "role": { - "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", "enum": [ "primary", "secondary" diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index 04f252228599..d0c1456502f1 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-2019-03 +tag: package-preview-2019-07 ``` +### Tag: package-preview-2019-07 + +These settings apply only when `--tag=package-preview-2019-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2019-07' +input-file: + - Microsoft.Devices/preview/2019-07-01-preview/iothub.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' +``` yaml $(tag) == 'package-2019-03' input-file: - Microsoft.Devices/stable/2019-03-22/iothub.json ``` + ### Tag: package-preview-2019-03 These settings apply only when `--tag=package-preview-2019-03` is specified on the command line. @@ -145,7 +154,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.go.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -157,6 +166,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Devices/preview/2019-07-01-preview/iothub.json - $(this-folder)/Microsoft.Devices/stable/2019-03-22/iothub.json - $(this-folder)/Microsoft.Devices/preview/2019-03-22-preview/iothub.json - $(this-folder)/Microsoft.Devices/preview/2018-12-01-preview/iothub.json @@ -168,11 +178,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json index cedabe460a02..cef0341ad8cb 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/ListVMSizesResult.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "api-version": "2018-11-19", + "api-version": "2019-06-01", "location": "eastus" }, "responses": { @@ -12,6 +12,7 @@ "name": "Standard_F2s_v2", "family": "standardFSv2Family", "vCPUs": 2, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 16384, "memoryGB": 4.0, @@ -22,6 +23,7 @@ "name": "Standard_F4s_v2", "family": "standardFSv2Family", "vCPUs": 4, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 32768, "memoryGB": 8.0, @@ -32,6 +34,7 @@ "name": "Standard_F8s_v2", "family": "standardFSv2Family", "vCPUs": 8, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 65536, "memoryGB": 16.0, @@ -42,6 +45,7 @@ "name": "Standard_F16s_v2", "family": "standardFSv2Family", "vCPUs": 16, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 131072, "memoryGB": 32.0, @@ -52,6 +56,7 @@ "name": "Standard_F32s_v2", "family": "standardFSv2Family", "vCPUs": 32, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 262144, "memoryGB": 64.0, @@ -62,6 +67,7 @@ "name": "Standard_F64s_v2", "family": "standardFSv2Family", "vCPUs": 64, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 524288, "memoryGB": 128.0, @@ -72,6 +78,7 @@ "name": "Standard_F72s_v2", "family": "standardFSv2Family", "vCPUs": 72, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 589824, "memoryGB": 144.0, @@ -82,6 +89,7 @@ "name": "Standard_D1_v2", "family": "standardDv2Family", "vCPUs": 1, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 51200, "memoryGB": 3.5, @@ -92,6 +100,7 @@ "name": "Standard_D2_v2", "family": "standardDv2Family", "vCPUs": 2, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 102400, "memoryGB": 7.0, @@ -102,6 +111,7 @@ "name": "Standard_D3_v2", "family": "standardDv2Family", "vCPUs": 4, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 204800, "memoryGB": 14.0, @@ -112,6 +122,7 @@ "name": "Standard_D4_v2", "family": "standardDv2Family", "vCPUs": 8, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 409600, "memoryGB": 28.0, @@ -122,6 +133,7 @@ "name": "Standard_D11_v2", "family": "standardDv2Family", "vCPUs": 2, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 102400, "memoryGB": 14.0, @@ -132,6 +144,7 @@ "name": "Standard_D12_v2", "family": "standardDv2Family", "vCPUs": 4, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 204800, "memoryGB": 28.0, @@ -142,6 +155,7 @@ "name": "Standard_D13_v2", "family": "standardDv2Family", "vCPUs": 8, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 409600, "memoryGB": 56.0, @@ -152,6 +166,7 @@ "name": "Standard_D14_v2", "family": "standardDv2Family", "vCPUs": 16, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 819200, "memoryGB": 112.0, @@ -162,6 +177,7 @@ "name": "Standard_DS1_v2", "family": "standardDSv2Family", "vCPUs": 1, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 7168, "memoryGB": 3.5, @@ -172,6 +188,7 @@ "name": "Standard_DS2_v2", "family": "standardDSv2Family", "vCPUs": 2, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 14336, "memoryGB": 7.0, @@ -182,6 +199,7 @@ "name": "Standard_DS3_v2", "family": "standardDSv2Family", "vCPUs": 4, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 28672, "memoryGB": 14.0, @@ -192,6 +210,7 @@ "name": "Standard_DS4_v2", "family": "standardDSv2Family", "vCPUs": 8, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 57344, "memoryGB": 28.0, @@ -202,6 +221,7 @@ "name": "Standard_DS5_v2", "family": "standardDSv2Family", "vCPUs": 16, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 114688, "memoryGB": 56.0, @@ -212,6 +232,7 @@ "name": "Standard_DS11_v2", "family": "standardDSv2Family", "vCPUs": 2, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 28672, "memoryGB": 14.0, @@ -222,6 +243,7 @@ "name": "Standard_DS12_v2", "family": "standardDSv2Family", "vCPUs": 4, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 57344, "memoryGB": 28.0, @@ -232,6 +254,7 @@ "name": "Standard_DS13_v2", "family": "standardDSv2Family", "vCPUs": 8, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 114688, "memoryGB": 56.0, @@ -242,6 +265,7 @@ "name": "Standard_DS14_v2", "family": "standardDSv2Family", "vCPUs": 16, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 229376, "memoryGB": 112.0, @@ -252,6 +276,7 @@ "name": "Standard_DS15_v2", "family": "standardDSv2Family", "vCPUs": 20, + "gpus": 0, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 286720, "memoryGB": 140.0, @@ -262,6 +287,7 @@ "name": "Standard_NC6s_v2", "family": "standardNCSv2Family", "vCPUs": 6, + "gpus": 1, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 344064, "memoryGB": 112.0, @@ -272,6 +298,7 @@ "name": "Standard_NC12s_v2", "family": "standardNCSv2Family", "vCPUs": 12, + "gpus": 2, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 688128, "memoryGB": 224.0, @@ -282,6 +309,7 @@ "name": "Standard_NC24rs_v2", "family": "standardNCSv2Family", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, @@ -292,6 +320,7 @@ "name": "Standard_NC24s_v2", "family": "standardNCSv2Family", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, @@ -302,6 +331,7 @@ "name": "Standard_NC6s_v3", "family": "standardNCSv3Family", "vCPUs": 6, + "gpus": 1, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 344064, "memoryGB": 112.0, @@ -312,6 +342,7 @@ "name": "Standard_NC12s_v3", "family": "standardNCSv3Family", "vCPUs": 12, + "gpus": 2, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 688128, "memoryGB": 224.0, @@ -322,6 +353,7 @@ "name": "Standard_NC24rs_v3", "family": "standardNCSv3Family", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, @@ -332,6 +364,7 @@ "name": "Standard_NC24s_v3", "family": "standardNCSv3Family", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, @@ -342,6 +375,7 @@ "name": "Standard_NC6", "family": "standardNCFamily", "vCPUs": 6, + "gpus": 1, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 389120, "memoryGB": 56.0, @@ -352,6 +386,7 @@ "name": "Standard_NC12", "family": "standardNCFamily", "vCPUs": 12, + "gpus": 2, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 696320, "memoryGB": 112.0, @@ -362,6 +397,7 @@ "name": "Standard_NC24", "family": "standardNCFamily", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1474560, "memoryGB": 224.0, @@ -372,6 +408,7 @@ "name": "Standard_NC24r", "family": "standardNCFamily", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1474560, "memoryGB": 224.0, @@ -382,6 +419,7 @@ "name": "Standard_NV6", "family": "standardNVFamily", "vCPUs": 6, + "gpus": 1, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 389120, "memoryGB": 56.0, @@ -392,6 +430,7 @@ "name": "Standard_NV12", "family": "standardNVFamily", "vCPUs": 12, + "gpus": 2, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 696320, "memoryGB": 112.0, @@ -402,6 +441,7 @@ "name": "Standard_NV24", "family": "standardNVFamily", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1474560, "memoryGB": 224.0, @@ -412,6 +452,7 @@ "name": "Standard_ND6s", "family": "standardNDSFamily", "vCPUs": 6, + "gpus": 1, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 344064, "memoryGB": 112.0, @@ -422,6 +463,7 @@ "name": "Standard_ND12s", "family": "standardNDSFamily", "vCPUs": 12, + "gpus": 2, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 688128, "memoryGB": 224.0, @@ -432,6 +474,7 @@ "name": "Standard_ND24rs", "family": "standardNDSFamily", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, @@ -442,6 +485,7 @@ "name": "Standard_ND24s", "family": "standardNDSFamily", "vCPUs": 24, + "gpus": 4, "osVhdSizeMB": 1047552, "maxResourceVolumeMB": 1376256, "memoryGB": 448.0, diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json index df8767b44f41..46f750fc191d 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksGet.json @@ -12,7 +12,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json index f9493033130a..eac86d4ff8bb 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListByResourceGroup.json @@ -13,7 +13,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json index 608bc26f8ec0..be6cdeb0bad1 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksListBySubscription.json @@ -12,7 +12,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json index c2d76c7cb580..e1c562701091 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPatch.json @@ -6,7 +6,7 @@ "resourceGroupName": "myResourceGroup", "managedNetworkName": "myManagedNetwork", "parameters": { - "tags": [] + "tags": {} } }, "responses": { @@ -15,7 +15,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", @@ -66,7 +66,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json index d97e7acebf4d..084e5ebb2405 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/examples/ManagedNetwork/ManagedNetworksPut.json @@ -6,7 +6,7 @@ "resourceGroupName": "myResourceGroup", "managedNetworkName": "myManagedNetwork", "managedNetwork": { - "tags": [], + "tags": {}, "location": "eastus", "properties": { "scope": { @@ -52,7 +52,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", @@ -103,7 +103,7 @@ "name": "myManagedNetwork", "id": "subscriptions/subscriptionA/resourceGroups/myResourceGroup/providers/Microsoft.ManagedNetwork/managedNetworks/myManagedNetwork", "type": "Microsoft.ManagedNetwork/managedNetworks", - "tags": [], + "tags": {}, "location": "eastus", "properties": { "provisioningState": "Succeeded", diff --git a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json index 505d0362f690..49613849e061 100644 --- a/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json +++ b/specification/managednetwork/resource-manager/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json @@ -1011,12 +1011,16 @@ "type": "object", "properties": { "tags": { - "type": "array", - "items": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/TagsObject" + "type": "object", + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "additionalProperties": { + "type": "string" }, - "description": "Updates the tags property of the Managed Network" + "description": "Resource tags" } }, "description": "Update Tags of Managed Network" @@ -1414,16 +1418,16 @@ "description": "The resource model definition for a ARM tracked top level resource", "properties": { "tags": { - "type": "array", - "items": { - "type": "string", - "x-ms-mutability": [ - "read", - "create", - "update" - ] + "type": "object", + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "additionalProperties": { + "type": "string" }, - "description": "Resource tags." + "description": "Resource tags" }, "location": { "type": "string", @@ -1460,10 +1464,6 @@ }, "description": "Generic pointer to a resource" }, - "TagsObject": { - "type": "string", - "description": "Resource tags." - }, "ResourceProperties": { "properties": { "provisioningState": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..baf77be78a6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-06-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcher.json index 3dc318a36de0..8c6fb50bbdf5 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcher.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcher.json @@ -1457,438 +1457,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { - "put": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_CreateOrUpdate", - "description": "Create or update a connection monitor.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the connection monitor." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ConnectionMonitor" - }, - "description": "Parameters that define the operation to create a connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Update successful. The operation returns the resulting network watcher resource.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorResult" - } - }, - "201": { - "description": "Create successful. The operation returns the resulting network watcher resource.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Create connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - } - }, - "get": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_Get", - "description": "Gets a connection monitor by name.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The operation returns a connection monitor.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Get connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" - } - } - }, - "delete": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_Delete", - "description": "Deletes the specified connection monitor.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "Delete successful." - }, - "202": { - "description": "Accepted. The operation will complete asynchronously." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Delete connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { - "post": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_Stop", - "description": "Stops the specified connection monitor.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The operation stops the connection monitor." - }, - "202": { - "description": "Accepted. The operation will complete asynchronously." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Stop connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { - "post": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_Start", - "description": "Starts the specified connection monitor.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The operation starts the connection monitor." - }, - "202": { - "description": "Accepted. The operation will complete asynchronously." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Start connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { - "post": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_Query", - "description": "Query a snapshot of the most recent connection states.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "name": "connectionMonitorName", - "in": "path", - "required": true, - "type": "string", - "description": "The name given to the connection monitor." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successful query of connection states.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorQueryResult" - } - }, - "202": { - "description": "Accepted query of connection states.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorQueryResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "Query connection monitor": { - "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { - "get": { - "tags": [ - "ConnectionMonitors" - ], - "operationId": "ConnectionMonitors_List", - "description": "Lists all connection monitors for the specified Network Watcher.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing Network Watcher." - }, - { - "name": "networkWatcherName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Network Watcher resource." - }, - { - "$ref": "./network.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "./network.json#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Successful connection monitor enumeration request.", - "schema": { - "$ref": "#/definitions/ConnectionMonitorListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "List connection monitors": { - "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { "post": { "tags": [ @@ -3296,261 +2864,6 @@ }, "description": "City or town details." }, - "ConnectionMonitor": { - "properties": { - "location": { - "type": "string", - "description": "Connection monitor location." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Connection monitor tags." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ConnectionMonitorParameters", - "description": "Properties of the connection monitor." - } - }, - "required": [ - "properties" - ], - "description": "Parameters that define the operation to create a connection monitor." - }, - "ConnectionMonitorParameters": { - "properties": { - "source": { - "$ref": "#/definitions/ConnectionMonitorSource", - "description": "Describes the source of connection monitor." - }, - "destination": { - "$ref": "#/definitions/ConnectionMonitorDestination", - "description": "Describes the destination of connection monitor." - }, - "autoStart": { - "type": "boolean", - "default": true, - "description": "Determines if the connection monitor will start automatically once created." - }, - "monitoringIntervalInSeconds": { - "type": "integer", - "default": 60, - "description": "Monitoring interval in seconds." - } - }, - "required": [ - "source", - "destination" - ], - "description": "Parameters that define the operation to create a connection monitor." - }, - "ConnectionMonitorSource": { - "properties": { - "resourceId": { - "type": "string", - "description": "The ID of the resource used as the source by connection monitor." - }, - "port": { - "type": "integer", - "description": "The source port used by connection monitor." - } - }, - "required": [ - "resourceId" - ], - "description": "Describes the source of connection monitor." - }, - "ConnectionMonitorDestination": { - "properties": { - "resourceId": { - "type": "string", - "description": "The ID of the resource used as the destination by connection monitor." - }, - "address": { - "type": "string", - "description": "Address of the connection monitor destination (IP or domain name)." - }, - "port": { - "type": "integer", - "description": "The destination port used by connection monitor." - } - }, - "description": "Describes the destination of connection monitor." - }, - "ConnectionMonitorListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ConnectionMonitorResult" - }, - "description": "Information about connection monitors." - } - }, - "description": "List of connection monitors." - }, - "ConnectionMonitorResult": { - "x-ms-azure-resource": true, - "properties": { - "name": { - "readOnly": true, - "type": "string", - "description": "Name of the connection monitor." - }, - "id": { - "readOnly": true, - "type": "string", - "description": "ID of the connection monitor." - }, - "etag": { - "type": "string", - "default": "A unique read-only string that changes whenever the resource is updated.", - "description": "A unique read-only string that changes whenever the resource is updated." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "Connection monitor type." - }, - "location": { - "type": "string", - "description": "Connection monitor location." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Connection monitor tags." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ConnectionMonitorResultProperties", - "description": "Properties of the connection monitor result." - } - }, - "description": "Information about the connection monitor." - }, - "ConnectionMonitorResultProperties": { - "properties": { - "provisioningState": { - "$ref": "./network.json#/definitions/ProvisioningState", - "description": "The provisioning state of the connection monitor." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The date and time when the connection monitor was started." - }, - "monitoringStatus": { - "type": "string", - "description": "The monitoring status of the connection monitor." - } - }, - "allOf": [ - { - "$ref": "#/definitions/ConnectionMonitorParameters" - } - ], - "description": "Describes the properties of a connection monitor." - }, - "ConnectionMonitorQueryResult": { - "properties": { - "sourceStatus": { - "type": "string", - "enum": [ - "Unknown", - "Active", - "Inactive" - ], - "x-ms-enum": { - "name": "ConnectionMonitorSourceStatus", - "modelAsString": true - }, - "description": "Status of connection monitor source." - }, - "states": { - "type": "array", - "items": { - "$ref": "#/definitions/ConnectionStateSnapshot" - }, - "description": "Information about connection states." - } - }, - "description": "List of connection states snapshots." - }, - "ConnectionStateSnapshot": { - "properties": { - "connectionState": { - "type": "string", - "enum": [ - "Reachable", - "Unreachable", - "Unknown" - ], - "x-ms-enum": { - "name": "ConnectionState", - "modelAsString": true - }, - "description": "The connection state." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The start time of the connection snapshot." - }, - "endTime": { - "type": "string", - "format": "date-time", - "description": "The end time of the connection snapshot." - }, - "evaluationState": { - "type": "string", - "enum": [ - "NotStarted", - "InProgress", - "Completed" - ], - "x-ms-enum": { - "name": "EvaluationState", - "modelAsString": true - }, - "description": "Connectivity analysis evaluation state." - }, - "avgLatencyInMs": { - "type": "integer", - "description": "Average latency in ms." - }, - "minLatencyInMs": { - "type": "integer", - "description": "Minimum latency in ms." - }, - "maxLatencyInMs": { - "type": "integer", - "description": "Maximum latency in ms." - }, - "probesSent": { - "type": "integer", - "description": "The number of sent probes." - }, - "probesFailed": { - "type": "integer", - "description": "The number of failed probes." - }, - "hops": { - "readOnly": true, - "type": "array", - "description": "List of hops between the source and the destination.", - "items": { - "$ref": "#/definitions/ConnectivityHop" - } - } - }, - "description": "Connection state snapshot." - }, "NetworkConfigurationDiagnosticParameters": { "description": "Parameters to get network configuration diagnostic.", "required": [ diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json new file mode 100644 index 000000000000..a0de50649da6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json @@ -0,0 +1,791 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-06-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.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + } + }, + "definitions": { + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + } + }, + "required": [ + "source", + "destination" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated.", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "type": "string", + "description": "The monitoring status of the connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json new file mode 100644 index 000000000000..d10e85993f1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationGateway.json @@ -0,0 +1,2677 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference of an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference of an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference of an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference of IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..c2b637199ebb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json @@ -0,0 +1,371 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/availableDelegations.json new file mode 100644 index 000000000000..3b89d2785871 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/availableDelegations.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Describes the actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewall.json new file mode 100644 index 000000000000..06da4074830e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewall.json @@ -0,0 +1,885 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags for an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource. This resource must be named 'AzureFirewallSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..83266779de74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json @@ -0,0 +1,124 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/bastionHost.json new file mode 100644 index 000000000000..f51de72d8f96 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/bastionHost.json @@ -0,0 +1,377 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json new file mode 100644 index 000000000000..f276a3dfcfb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json @@ -0,0 +1,90 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..1200a08c9d7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json @@ -0,0 +1,400 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "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" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "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": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the Batch service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Batch service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..f148f5fa6bea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json @@ -0,0 +1,401 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/endpointService.json new file mode 100644 index 000000000000..a2d2d7555d6e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/endpointService.json @@ -0,0 +1,113 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..7cd266fb26e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..a20730db48e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..764a0c132f6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..de41954a8173 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..22bd59a22106 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..f7846656854c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..1e2925f49289 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..dc65a8ffaa82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..e4ddd3169331 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..966257abd6e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,734 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..bed005756760 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..6ca2e617ac04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,254 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..db11ed7d3216 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..0f36ab0ef181 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..33a9fb3c5764 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..33a9fb3c5764 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..55f8aa1ddeb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..4a22b5b3b331 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..2f3c9461dab0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..39ec9a1bc136 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..fe1d86d3f4fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..bb461da80356 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..88ac777ef935 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..3dd81b8b1f40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..bece326e8092 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..93f190547872 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..ef2194670c8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..37cc74e292e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..a0ab7e64a05a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..71bd2f4bd111 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..d4ca4a99dbc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..ee9e5612334a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..2b11bbb5f656 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..823b322c7940 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..09855e182599 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..b05a78bb2809 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPut.json @@ -0,0 +1,377 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..d80cdb85e247 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..a790459c72bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,389 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..4912f26ad100 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..81dad6a973e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..3684ce50706a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..93f15706dafe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..020421f1069c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..956fc015093f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..dbd2b0dcc5d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..d071067f2657 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..e8a83a3d9b13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..dca5a3eb1e9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..394b604d4393 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..7092c881c956 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..9e3537673f41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..69ed58f1e748 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..90adb72269c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..59bb04c99892 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..65f1226a63bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..8e2401469f97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..4b8add845022 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..35c571c55457 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..11cc8743ccc8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..3250fc3b8ade --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..c2b31befe2c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..907f02305d9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": { + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..995e0accc506 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..06d96d3b7daf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..424edbde1805 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..721b45eb0fcc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..6360348cd07e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..b19e9c43c589 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..2e9d6e677ab2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..71717abae1e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..a858b47a0a32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..64ff671613cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..0a9a0bc74269 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..78b01ce0351c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..a9e63ab5a517 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..a37d448ff909 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..3d2039688535 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..bcd3f7402673 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..596340edbd2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..2110efccc24d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..f458106be8f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..6e0760cf42a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..28826d8e4e06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..e1731577639d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..baf4b29abbf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..9ae00fbf776a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..87220e73de43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..09ade3ce5da0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..492088c9dff6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..c466c767cc0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..9ebe53ef1c31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..2b1b5d43c73e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..737c22865098 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..cccdb78fb42b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..344104ea733c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..70ef204e21f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..f519a28855b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..de3176b517e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..8c862cd4ac49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..e096124fb545 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..315f9f4e7e32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-07-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..a56fab0fc770 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..2e3c6f43137e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..01a7e5746d9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1 + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..1c929bdc0e09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1 + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..682f90b4ac2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..f1e705601cdf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..0ac82c31eda2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..ef351619dc6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..515fe27e4def --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..871a0b2d5058 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..5727230efb31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..375434eb7d65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..ed7aa18465c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..db0545a4c733 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..958919b224a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..740b1f27850d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..6dc98f67eade --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..26225969b837 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..ebe7de53f3e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..ec155405fdc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..d5edec29ffd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..3d4299b2c40f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..2333b359158f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..6ed340bc1e99 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..64655a83e55b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyUpdateTags.json new file mode 100644 index 000000000000..40987372ee7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/FirewallPolicyUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "firewallPolicyParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Deny" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..9ad59263fb6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..d9a9e2445575 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..60fa71b3bc0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..cd694b3df7e5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..baa02fe7d892 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..ab426bda77ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..c5398b77e30d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..6b0ea3090d56 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..264c8733258e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..b6c59bce928e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..2be36a4042f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "properties": { + "serviceEndpoints": [], + "resourceNavigationLinks": [] + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..24bbb9432513 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..312c8778fd59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..353cba36b044 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..1978dd2af5b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..d81df11e1af6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..844b831087c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..1610cd2abc74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..1b251f0184a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..aa63a94f6ebd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..a96320348eff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..77855832c9ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..7bab1f406c44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..4b53ffda1c90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..3e64c7f73bd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..c9e82b763ccc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..b40ab6d92315 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..947fcc261882 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..e457c6be9ef8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..aaa94ab9dac8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..542d77e0b599 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..117be9d91c36 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..cdfbcda22bd7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..ba0b5ac708b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "201": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + }, + "202": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..afb5990d519c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..4f4a465a919f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..c1bb547718c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..b8dcc6c244c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..253616c3bbda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..b6cb6ed6f25f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..b71c127633a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..50e5cfb853fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..bd3252568566 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..338f840cc9e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..281285900479 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..ed64f0aa2e2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..c23d00e7a441 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..0da23d455f58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..31d65703c8fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..cc9d5019eb8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-07-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..e9f773cc5bb6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..792c36e41e51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..be9d8c64db2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..63b4fa348847 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..277a477a4ec6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..679b0a502b03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..a706e885de3d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..c8f690f73a1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..755a44859219 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..2c19483732bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..8030a96cbf8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..a2232988f69a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..a496cf485f44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..bc483627e671 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..8a752f41b9c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..4f8b34e4e987 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..6d0e88d172e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..d3119d1665a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..3aa607111323 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..277a42696df5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..c115dd4825bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..6b9d27d00fcb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..6f5bc8701d4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..ad0c2b27e64b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..a4b8f9489216 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + } + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..31ea24d25746 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..0d86dcf28779 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..da98ba416f09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..bc2d3739b185 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..ab3b0e60caf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..699b3b9b2a6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..6579d947a19c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..e561811c6c7f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..5f9b1e695e62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..529008c5c73e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..abeb12c03eed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..21916944197a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..9649a219eb71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..b9b975e05c1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..e0cf1ddf27c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..f10eae8fde43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..62bc9267320e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..bb4f02d39f4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..d313d222bc91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..1c67e01e68be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..ca2528e6ed34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/OperationList.json new file mode 100644 index 000000000000..a43c75081473 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..47073695d2b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..7c354b3865a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..4b9398803ee0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..03ebc2272042 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..343d292f35f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..343d292f35f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..4537ea357ce4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..c848345def4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationDelete.json new file mode 100644 index 000000000000..d47e4d951a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "virtualWanName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationGet.json new file mode 100644 index 000000000000..77904803d8ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "p2SVpnServerConfigVpnClientRootCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + } + ], + "p2SVpnServerConfigVpnClientRevokedCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusServerRootCer1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCer1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + } + ], + "p2SVpnServerConfigRadiusClientRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationList.json new file mode 100644 index 000000000000..4792c693d96d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationList.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "p2SVpnServerConfigVpnClientRootCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRootCertificates" + } + ], + "p2SVpnServerConfigVpnClientRevokedCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/VpnClientRevokedCert2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRevokedCertificates" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusServerRootCertificates" + } + ], + "p2SVpnServerConfigRadiusClientRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusClientRootCertificates" + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationPut.json new file mode 100644 index 000000000000..f44da85748f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/P2SVpnServerConfigurationPut.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "p2SVpnServerConfigurationParameters": { + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "p2SVpnServerConfigVpnClientRootCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRootCert1", + "properties": { + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + } + ], + "p2SVpnServerConfigVpnClientRevokedCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "properties": { + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "properties": { + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + } + ], + "p2SVpnServerConfigRadiusClientRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "properties": { + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "p2SVpnServerConfigVpnClientRootCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + } + ], + "p2SVpnServerConfigVpnClientRevokedCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + } + ], + "p2SVpnServerConfigRadiusClientRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "p2SVpnServerConfigVpnClientRootCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + } + ], + "p2SVpnServerConfigVpnClientRevokedCertificates": [ + { + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + } + ], + "p2SVpnServerConfigRadiusClientRootCertificates": [ + { + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..f19d0663bb41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..64216fc28b59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..bcff39d3e3cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..bbd459535336 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..866bfd11d7f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..6540feb1a231 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..bcdf026d4935 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..237d5b0f6c1e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..a664c95aca66 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..160bb1d26df2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..a13527596510 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..d2203ab6c03f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..d259b30abdf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..39384a92db84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..5d60a26067ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..2fc656b4d97b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..1cd679573e3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..54613aabafaa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..7b5dca07849f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..25afde50ce90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..dff18a83abcf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..76204420bdfc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..444aa0bb8422 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..8590e5d56c2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..0212146b2aca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..738e994d7ae3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..5269d25a96f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..6b881c9e547b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..90a677e10c9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..76feb848cd52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..baa3ab12766d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..6e8af9b45f76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterCreate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..af9b398d2ef9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..f9540aa8405a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..ede7807eed21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..4080f4951d9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..9435b7e351d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..ccf5f262af09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..18c29605d239 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..98f62f92cc76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleUpdate.json new file mode 100644 index 000000000000..4e88958a2dd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterRuleUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterUpdate.json new file mode 100644 index 000000000000..09f48217a8cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteFilterUpdate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..63e26e3ea5a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..94e94efcdbba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..065b71248faa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..8327ed1e46b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableList.json new file mode 100644 index 000000000000..1ce7582097fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..0cda0516852c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..a50e1eaff4b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..d16664860f78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..00f7b93dd96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..fe7e24ec1e61 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..cafb15f99050 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..b56ff196a5f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..742467c37b4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..af24c9ba2341 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..59a40b9a263f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..dd8083c96faf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..55ae78521977 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..afb1f8926b40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..8d9ffb6bd5e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..7ea9f305eb8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..4bc9ce276afc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..5e554614a4a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..07340b129336 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..100971d617d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..d6c532f83da9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..c89b30f3da3d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..a9cb0e1f536a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..d410fc4e21fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGet.json new file mode 100644 index 000000000000..588d884a3463 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..77c79d4759fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetList.json new file mode 100644 index 000000000000..7dc3719db1a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..81c586291d7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..9fb8aef51b98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageList.json new file mode 100644 index 000000000000..ac0a244bc87e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..e633544235b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..02fd8e81b297 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..3b1c89bcc8ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "addressPrefix": "10.10.1.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..af9a866fa90e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "10.10.1.0/24" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "210.10.1.0/24" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..ae98c411b74d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "10.10.1.0/24" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "210.10.1.0/24" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..0730f09e8abb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubPut.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "addressPrefix": "10.168.0.0/24" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "addressPrefix": "10.168.0.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..72ade7683e62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "addressPrefix": "10.168.0.0/24" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "addressPrefix": "10.168.0.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..2f3052fbaffb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..fdb5e7c68f11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..488fd35b6e71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..6bfe80e65e26 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..6c64db95f38f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..f3131933b581 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..e664398d8a8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..b7efb1c321d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..77c6043f1351 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..27127cbbf464 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..8b0a38a82fa6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..97908a4cabfb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..02970922bd9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..9083feadf090 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..1d4b60431577 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..42b7b23f7656 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..cc3515877631 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..11d3547ee86c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..b3f19826574b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..8523730364e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..ff9fdd2272d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..bc95fa2ed898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..14c80c90dc0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..e0a9444285fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..23e596a1e32b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..2ce99b4cc280 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..c949baf0f5d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..c48e30246f0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..23e596a1e32b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..1a1af2a979e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..b305855e1b32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..6b06722949ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..fde18721490a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..092dabb8d803 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..15dd5c0d7723 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..57cae98293f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..49fd01d71e68 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..86251ff1f4bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "", + "aadAudience": "", + "aadIssuer": "" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..cba67432e8fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..8cccbd3e9b90 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..b2f74bb5a302 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2019-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..880bd0e40781 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..e49778268df3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..97007c6e9b89 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..60a3efdbdba1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..db03fdb13449 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..c0c0368d044d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..d127d8574c4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..78d0b6e785ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..38becc2d847d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..3f0d36f08972 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..a98f899ec2c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..751ddb5bc49b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..21d3e9559d24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..5ab49837d1a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..db5f13cb14a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..44291b21830f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..ec03e3e3f5bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..15f0f4fb9355 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..7011c40a14b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..23e78298227a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..3ac8de4bd739 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..182d80e630e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..aeecd3254c45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..c647f22e8fbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..8364fb9aa104 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..5717bc4d05f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..6fb8ada376a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringUpdate.json new file mode 100644 index 000000000000..f15b708a8e41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPeeringUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "peeringName": "peering1", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..17be7b0229a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterUpdateTags.json new file mode 100644 index 000000000000..daa2cb779d40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualRouterUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..d972771a9a81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..946a3c77df9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..351254ae63ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..da9d8e8c2096 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..a10c3cd9e418 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANPut.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..13a807c899e5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..a7c65be9bb5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..a9f73ee0aa3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..84df4e0e6e2e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..092430d3d5c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..26d388971806 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..9dbe278dd22c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..01ffb039e099 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..8861a1bb6dda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..8861a1bb6dda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..61ec985a27ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..4f19e1d13a9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..cddd1787724d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..91c4173e4418 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..8d623220a7f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..5f7f39765268 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..b6ef1b1dc934 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..59d7bf703e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..64e3d06e2c70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..9729cf0e7421 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..ec5dd145a739 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..dcfcb160a565 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitePut.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..381aca20d790 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..5b581eabc4f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-07-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..a9efae6a48ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListAllPolicies.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention" + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..434db47f32fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafListPolicies.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention" + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..61db2ef7a6f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,228 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention" + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention" + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..23131df9ac44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..4c0eb1a31132 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/examples/WafPolicyGet.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2019-07-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention" + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json new file mode 100644 index 000000000000..008fb9709c39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json @@ -0,0 +1,2328 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference of AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./expressRouteGateway.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting Global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..7d9c6ef72dc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json @@ -0,0 +1,934 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2019-07-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}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteGateway.json new file mode 100644 index 000000000000..06076d54e669 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRouteGateway.json @@ -0,0 +1,640 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + } + } + } + } + }, + "definitions": { + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRoutePort.json new file mode 100644 index 000000000000..7559d21116cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/expressRoutePort.json @@ -0,0 +1,809 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/firewallPolicy.json new file mode 100644 index 000000000000..80c30f270065 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/firewallPolicy.json @@ -0,0 +1,985 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "patch": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_UpdateTags", + "x-ms-examples": { + "Update FirewallPolicy": { + "$ref": "./examples/FirewallPolicyUpdateTags.json" + } + }, + "description": "Updates a Firewall Policy Tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Firewall Policy." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "firewallPolicyParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Firewall Policy tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Firewall Policy updated.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT", + "SNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny", + "Alert " + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/loadBalancer.json new file mode 100644 index 000000000000..34b93bc40f7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/loadBalancer.json @@ -0,0 +1,1916 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Public IP Prefix resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/natGateway.json new file mode 100644 index 000000000000..d69cb0716e8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/natGateway.json @@ -0,0 +1,433 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/network.json new file mode 100644 index 000000000000..4cebc1e72128 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/network.json @@ -0,0 +1,300 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the 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." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkInterface.json new file mode 100644 index 000000000000..5552741a7102 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkInterface.json @@ -0,0 +1,1419 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference of the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference of ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference of LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference of the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of the public IP resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkProfile.json new file mode 100644 index 000000000000..a9db16a78863 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkProfile.json @@ -0,0 +1,579 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + }, + "x-ms-long-running-operation": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json new file mode 100644 index 000000000000..d994ebe99119 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json @@ -0,0 +1,896 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcher.json new file mode 100644 index 000000000000..aa1c32fa8035 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/networkWatcher.json @@ -0,0 +1,3052 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "Describes the storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "Describes the storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated.", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "Describes the properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "networkWatcherFlowAnalyticsConfiguration" + ], + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "enabled" + ], + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "Describes the source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "Describes the destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "Describes the HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*', port (for example, 3389) and port range (for example, 80-100)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/operation.json new file mode 100644 index 000000000000..08b2e53d2849 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/operation.json @@ -0,0 +1,265 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateEndpoint.json new file mode 100644 index 000000000000..1d39161277bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateEndpoint.json @@ -0,0 +1,557 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + } + }, + "description": "Properties of the private endpoint." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateLinkService.json new file mode 100644 index 000000000000..19d6680d4d3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/privateLinkService.json @@ -0,0 +1,897 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpAddress.json new file mode 100644 index 000000000000..ebc3c62b6f8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpAddress.json @@ -0,0 +1,502 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpPrefix.json new file mode 100644 index 000000000000..e8954635aa9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/publicIpPrefix.json @@ -0,0 +1,445 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeFilter.json new file mode 100644 index 000000000000..2f611fcc80e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeFilter.json @@ -0,0 +1,820 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Update", + "x-ms-examples": { + "RouteFilterUpdate": { + "$ref": "./examples/RouteFilterUpdate.json" + } + }, + "description": "Updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PatchRouteFilter" + }, + "description": "Parameters supplied to the update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Update", + "x-ms-examples": { + "RouteFilterRuleUpdate": { + "$ref": "./examples/RouteFilterRuleUpdate.json" + } + }, + "description": "Updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PatchRouteFilterRule" + }, + "description": "Parameters supplied to the update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeTable.json new file mode 100644 index 000000000000..7e12a64a913b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/routeTable.json @@ -0,0 +1,693 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "type": "string", + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceCommunity.json new file mode 100644 index 000000000000..80532e0d715b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceCommunity.json @@ -0,0 +1,152 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..26225377180b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json @@ -0,0 +1,681 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Update", + "description": "Updates service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceTags.json new file mode 100644 index 000000000000..12cee45b40a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/serviceTags.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/usage.json new file mode 100644 index 000000000000..006ab58d31ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/usage.json @@ -0,0 +1,154 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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}/providers/Microsoft.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetwork.json new file mode 100644 index 000000000000..5c42c8bf364a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetwork.json @@ -0,0 +1,1793 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Describes the actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference of the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference of the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "resourceNavigationLinks": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference of the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..72fd74d07726 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json @@ -0,0 +1,3349 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference of the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference of the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format" + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format" + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json new file mode 100644 index 000000000000..a41da445b462 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json @@ -0,0 +1,390 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference of the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualRouter.json new file mode 100644 index 000000000000..c0af6a092a82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualRouter.json @@ -0,0 +1,819 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-07-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.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist" + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "patch": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Update", + "description": "Updates a Virtual Router.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Virtual Router." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Virtual Router Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Virtual Router updated.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update VirtualRouter": { + "$ref": "./examples/VirtualRouterUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist" + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "patch": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Update", + "description": "Updates a Virtual Router Peering.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the Virtual Router Peering." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering being updated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to update Virtual Router Peering operation." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Virtual Router Peering updated.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update VirtualRouter Peering": { + "$ref": "./examples/VirtualRouterPeeringUpdate.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition" + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Gets name of the peering unique to VirtualRouter. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource" + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualWan.json new file mode 100644 index 000000000000..614c401e9cd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualWan.json @@ -0,0 +1,3932 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2019-07-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.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations/{p2SVpnServerConfigurationName}": { + "get": { + "operationId": "P2sVpnServerConfigurations_Get", + "x-ms-examples": { + "P2SVpnServerConfigurationGet": { + "$ref": "./examples/P2SVpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnServerConfiguration." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "P2sVpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnServerConfigurationPut": { + "$ref": "./examples/P2SVpnServerConfigurationPut.json" + } + }, + "description": "Creates a P2SVpnServerConfiguration to associate with a VirtualWan if it doesn't exist else updates the existing P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + }, + "description": "Parameters supplied to create or Update a P2SVpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "201": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "P2sVpnServerConfigurations_Delete", + "x-ms-examples": { + "P2SVpnServerConfigurationDelete": { + "$ref": "./examples/P2SVpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnServerConfiguration." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnServerConfiguration deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No P2SVpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations": { + "get": { + "operationId": "P2sVpnServerConfigurations_ListByVirtualWan", + "x-ms-examples": { + "P2SVpnServerConfigurationList": { + "$ref": "./examples/P2SVpnServerConfigurationList.json" + } + }, + "description": "Retrieves all P2SVpnServerConfigurations for a particular VirtualWan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all P2SVpnServerConfigurations for a VirtualWan.", + "schema": { + "$ref": "#/definitions/ListP2SVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "p2SVpnServerConfigurations": { + "type": "array", + "description": "List of all P2SVpnServerConfigurations associated with the virtual wan.", + "items": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "P2SVpnServerConfigVpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of VPN client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRootCertificatePropertiesFormat", + "description": "Properties of the P2SVpnServerConfiguration VPN client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusServerRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the radius server root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of Radius Server root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusServerRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigRadiusServerRootCertificatePropertiesFormat", + "description": "Properties of the P2SVpnServerConfiguration Radius Server root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "Radius Server root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusClientRootCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the radius client root certificate resource." + } + }, + "description": "Properties of the Radius client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigRadiusClientRootCertificatePropertiesFormat", + "description": "Properties of the Radius client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Radius client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the P2SVpnServerConfiguration that is unique within a VirtualWan in a resource group. This name can be used to access the resource along with Paren VirtualWan resource name." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the P2SVpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigVpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigVpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigRadiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigRadiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of P2SVpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for P2SVpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the P2SVpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the P2SVpnServerConfiguration resource for point to site client connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN server configuration resource." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for P2SVpnServerConfiguration." + }, + "P2SVpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SVpnServerConfiguration Resource." + }, + "ListP2SVpnServerConfigurationsResult": { + "description": "Result of the request to list all P2SVpnServerConfigurations associated to a VirtualWan. It contains a list of P2SVpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + }, + "description": "List of P2SVpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "p2SVpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents Address space for P2S VpnClient." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents the custom routes specified by the customer for P2SVpnGateway and P2S VpnClient." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..240fef9acf6a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json @@ -0,0 +1,344 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..da260b0ce451 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json @@ -0,0 +1,223 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-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.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json new file mode 100644 index 000000000000..d4545c9f0d0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json @@ -0,0 +1,537 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-07-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "description": "Gets all the WAF policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "properties": { + "policySettings": { + "description": "Describes policySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "Describes custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "enabledState": { + "description": "Describes if the policy is in enabled state or disabled state.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "Describes if it is in detection mode or prevention mode at policy level.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "Describes type of rule.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Describes what transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Describes field of the matchVariable collection.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "Describes operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Describes if this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.go.md b/specification/network/resource-manager/readme.go.md index 26f5f51627a7..15968378a707 100644 --- a/specification/network/resource-manager/readme.go.md +++ b/specification/network/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-07 - tag: package-2019-06 - tag: package-2019-04 - tag: package-2019-02 @@ -39,6 +40,15 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2019-07 and go + +These settings apply only when `--tag=package-2019-07 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-07' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-07-01/$(namespace) +``` + ### Tag: package-2019-06 and go These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. diff --git a/specification/network/resource-manager/readme.java.md b/specification/network/resource-manager/readme.java.md index 0c7b468e5551..4bf8849ce6ca 100644 --- a/specification/network/resource-manager/readme.java.md +++ b/specification/network/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-network ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-07 - tag: package-2019-06 - tag: package-2019-04 - tag: package-2019-02 @@ -27,6 +28,19 @@ batch: - tag: package-2017-10 ``` +### Tag: package-2019-07 and java + +These settings apply only when `--tag=package-2019-07 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2019_07_01 + output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2019_07_01 + regenerate-manager: true + generate-interface: true +``` + ### Tag: package-2019-06 and java These settings apply only when `--tag=package-2019-06 --java` is specified on the command line. diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index a5f7816f0127..110d59131837 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,64 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2019-06 +tag: package-2019-07 ``` +### 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: + - Microsoft.Network/stable/2019-07-01/applicationGateway.json + - Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2019-07-01/availableDelegations.json + - Microsoft.Network/stable/2019-07-01/azureFirewall.json + - Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2019-07-01/bastionHost.json + - Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json + - Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2019-07-01/endpointService.json + - Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json + - Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2019-07-01/expressRouteGateway.json + - Microsoft.Network/stable/2019-07-01/expressRoutePort.json + - Microsoft.Network/stable/2019-07-01/firewallPolicy.json + - Microsoft.Network/stable/2019-07-01/loadBalancer.json + - Microsoft.Network/stable/2019-07-01/natGateway.json + - Microsoft.Network/stable/2019-07-01/network.json + - Microsoft.Network/stable/2019-07-01/networkInterface.json + - Microsoft.Network/stable/2019-07-01/networkProfile.json + - Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json + - Microsoft.Network/stable/2019-07-01/networkWatcher.json + - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - Microsoft.Network/stable/2019-07-01/operation.json + - Microsoft.Network/stable/2019-07-01/privateEndpoint.json + - Microsoft.Network/stable/2019-07-01/privateLinkService.json + - Microsoft.Network/stable/2019-07-01/publicIpAddress.json + - Microsoft.Network/stable/2019-07-01/publicIpPrefix.json + - Microsoft.Network/stable/2019-07-01/routeFilter.json + - Microsoft.Network/stable/2019-07-01/routeTable.json + - Microsoft.Network/stable/2019-07-01/serviceCommunity.json + - Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2019-07-01/serviceTags.json + - Microsoft.Network/stable/2019-07-01/usage.json + - Microsoft.Network/stable/2019-07-01/virtualNetwork.json + - Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json + - Microsoft.Network/stable/2019-07-01/virtualRouter.json + - Microsoft.Network/stable/2019-07-01/virtualWan.json + - Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json +``` ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. -```yaml $(tag) == 'package-2019-06' +``` yaml $(tag) == 'package-2019-06' input-file: - Microsoft.Network/stable/2019-06-01/applicationGateway.json - Microsoft.Network/stable/2019-06-01/applicationSecurityGroup.json @@ -60,6 +109,7 @@ input-file: - Microsoft.Network/stable/2019-06-01/networkProfile.json - Microsoft.Network/stable/2019-06-01/networkSecurityGroup.json - Microsoft.Network/stable/2019-06-01/networkWatcher.json + - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - Microsoft.Network/stable/2019-06-01/operation.json - Microsoft.Network/stable/2019-06-01/privateEndpoint.json - Microsoft.Network/stable/2019-06-01/privateLinkService.json @@ -79,6 +129,7 @@ input-file: - Microsoft.Network/stable/2019-06-01/vmssPublicIpAddress.json - Microsoft.Network/stable/2019-06-01/webapplicationfirewall.json ``` + ### Tag: package-2019-04 These settings apply only when `--tag=package-2019-04` is specified on the command line. @@ -1023,6 +1074,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: virtualNetworkTap.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: virtualRouter.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: virtualNetworkGateway.json reason: name, id and type properties are inherited from the upper level @@ -1175,7 +1229,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -1187,6 +1241,48 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Network/stable/2019-07-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/network.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/applicationGateway.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/applicationSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2019-06-01/availableDelegations.json @@ -1715,11 +1811,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/resources/resource-manager/Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json b/specification/resources/resource-manager/Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json index e798146ac944..4d40f56a8518 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json @@ -1328,7 +1328,7 @@ }, "type": { "$ref": "#/definitions/ApplianceArtifactType", - "description": "The the appliance artifact type." + "description": "The appliance artifact type." } }, "description": "Appliance artifact." diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index d92100bcc165..7ad51fe4aeff 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -42,6 +42,7 @@ batch: - tag: package-resources-2016-07 - tag: package-resources-2016-02 - tag: package-resources-2015-11 + - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 - tag: package-subscriptions-2015-11 @@ -251,6 +252,16 @@ namespace: resources output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-11-01/resources ``` +### Tag: package-subscriptions-2019-06 and go + +These settings apply only when `--tag=package-subscriptions-2019-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-06' && $(go) +namespace: subscriptions +output-folder: $(go-sdk-folder)/services/resources/mgmt/2019-06-01/subscriptions +``` + ### Tag: package-subscriptions-2018-06 and go These settings apply only when `--tag=package-subscriptions-2018-06 --go` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.java.md b/specification/resources/resource-manager/readme.java.md index 5079f2effce2..c55819b454fe 100644 --- a/specification/resources/resource-manager/readme.java.md +++ b/specification/resources/resource-manager/readme.java.md @@ -18,7 +18,6 @@ Generate all API versions currently shipped for this package ``` yaml $(java) && $(multiapi) batch: - - tag: package-2019-06 - tag: package-features-2015-12 - tag: package-locks-2016-09 - tag: package-policy-2019-06 @@ -33,23 +32,11 @@ batch: - tag: package-resources-2019-03 - tag: package-resources-2018-02 - tag: package-resources-2016-09 + - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 ``` -### Tag: package-2019-06 and java - -These settings apply only when `--tag=package-2019-06 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag) == 'package-2019-06' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.resources.v2019_06_01 - output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_06_01 -regenerate-manager: true -generate-interface: true -``` - ### Tag: package-features-2015-12 and java These settings apply only when `--tag=package-features-2015-12 --java` is specified on the command line. @@ -259,6 +246,19 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-subscriptions-2019-06 and java + +These settings apply only when `--tag=package-subscriptions-2019-06 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-06' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.resources.v2019_06_01 + output-folder: $(azure-libraries-for-java-folder)/resources/resource-manager/v2019_06_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-subscriptions-2018-06 and java These settings apply only when `--tag=package-subscriptions-2018-06 --java` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 24140d72a4fd..96de4985ec6b 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -40,16 +40,12 @@ tag: package-locks-2016-09 tag: package-policy-2019-06 ``` -``` yaml $(package-policy) -tag: package-policy-2019-01 -``` - ``` yaml $(package-resources) tag: package-resources-2019-08 ``` ``` yaml $(package-subscriptions) -tag: package-subscriptions-2018-06 +tag: package-subscriptions-2019-06 ``` ``` yaml $(package-links) @@ -57,18 +53,9 @@ tag: package-links-2016-09 ``` ``` yaml $(package-managedapplications) -tag: package-2019-06 +tag: package-managedapplications-2018-06 ``` - -### 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: - - Microsoft.Resources/stable/2019-06-01/subscriptions.json -``` ### Tag: package-features-2015-12 These settings apply only when `--tag=package-features-2015-12` is specified on the command line. @@ -542,7 +529,6 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Resources/stable/2019-06-01/subscriptions.json - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json - $(this-folder)/Microsoft.Authorization/stable/2015-01-01/locks.json @@ -576,6 +562,7 @@ input-file: - $(this-folder)/Microsoft.Resources/stable/2016-07-01/resources.json - $(this-folder)/Microsoft.Resources/stable/2016-02-01/resources.json - $(this-folder)/Microsoft.Resources/stable/2015-11-01/resources.json + - $(this-folder)/Microsoft.Resources/stable/2019-06-01/subscriptions.json - $(this-folder)/Microsoft.Resources/stable/2018-06-01/subscriptions.json - $(this-folder)/Microsoft.Resources/stable/2016-06-01/subscriptions.json - $(this-folder)/Microsoft.Resources/stable/2015-11-01/subscriptions.json diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index 34d22a7cc70d..433fad5215c0 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -25,7 +25,6 @@ batch: - tag: package-locks-2016-09 - tag: package-locks-2015-01 - tag: package-managedapplications-2018-06 - - tag: package-managedapplications-2017-09 - tag: package-policy-2019-06 - tag: package-policy-2019-01 - tag: package-policy-2018-05 @@ -104,17 +103,6 @@ python: output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications ``` -### Tag: package-managedapplications-2017-09 and python - -These settings apply only when `--tag=package-managedapplications-2017-09 --python` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-managedapplications-2017-09' && $(python) -python: - namespace: azure.mgmt.resource.managedapplications - output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications -``` - ### Tag: package-policy-2019-06 and python These settings apply only when `--tag=package-policy-2019-06 --python` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.ruby.md b/specification/resources/resource-manager/readme.ruby.md index 5d481159c7c0..2b4200a90832 100644 --- a/specification/resources/resource-manager/readme.ruby.md +++ b/specification/resources/resource-manager/readme.ruby.md @@ -47,11 +47,22 @@ package-name: azure_mgmt_subscriptions package-version: "0.16.0" azure-arm: true batch: + - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 - tag: package-subscriptions-2015-11 ``` +### Tag: package-subscriptions-2019-06 and ruby + +These settings apply only when `--tag=package-subscriptions-2019-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-06' && $(ruby) +namespace: "Azure::Subscriptions::Mgmt::V2019_06_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_subscriptions/lib +``` + ### Tag: package-subscriptions-2018-06 and ruby These settings apply only when `--tag=package-subscriptions-2018-06 --ruby` is specified on the command line. diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index 544974958663..c922501346cd 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -62,8 +62,8 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules": { "get": { "x-ms-examples": { - "Get all scheduled alert rules.": { - "$ref": "./examples/alertRules/GetScheduledAlertRules.json" + "Get all alert rules.": { + "$ref": "./examples/alertRules/GetAllAlertRules.json" } }, "tags": [ @@ -110,8 +110,14 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}": { "get": { "x-ms-examples": { - "Get a scheduled alert rule.": { - "$ref": "./examples/alertRules/GetScheduledAlertRuleById.json" + "Get a Scheduled alert rule.": { + "$ref": "./examples/alertRules/GetScheduledAlertRule.json" + }, + "Get a Fusion alert rule.": { + "$ref": "./examples/alertRules/GetFusionAlertRule.json" + }, + "Get a MicrosoftSecurityIncidentCreation rule.": { + "$ref": "./examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json" } }, "tags": [ @@ -156,8 +162,14 @@ }, "put": { "x-ms-examples": { - "Creates or updates a scheduled alert rule.": { + "Creates or updates a Scheduled alert rule.": { "$ref": "./examples/alertRules/CreateScheduledAlertRule.json" + }, + "Creates or updates a Fusion alert rule.": { + "$ref": "./examples/alertRules/CreateFusionAlertRule.json" + }, + "Creates or updates a MicrosoftSecurityIncidentCreation rule.": { + "$ref": "./examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json" } }, "tags": [ @@ -211,8 +223,8 @@ }, "delete": { "x-ms-examples": { - "Delete a scheduled alert rule.": { - "$ref": "./examples/alertRules/DeleteScheduledAlertRule.json" + "Delete an alert rule.": { + "$ref": "./examples/alertRules/DeleteAlertRule.json" } }, "tags": [ @@ -572,6 +584,7 @@ "Cases" ], "description": "Gets all cases.", + "deprecated": true, "operationId": "Cases_List", "parameters": [ { @@ -632,6 +645,7 @@ "Cases" ], "description": "Gets a case.", + "deprecated": true, "operationId": "Cases_Get", "parameters": [ { @@ -678,6 +692,7 @@ "Cases" ], "description": "Creates or updates the case.", + "deprecated": true, "operationId": "Cases_CreateOrUpdate", "parameters": [ { @@ -733,6 +748,7 @@ "Cases" ], "description": "Delete the case.", + "deprecated": true, "operationId": "Cases_Delete", "parameters": [ { @@ -781,6 +797,7 @@ "CaseComments" ], "description": "Gets all case comments.", + "deprecated": true, "operationId": "Comments_ListByCase", "parameters": [ { @@ -845,6 +862,7 @@ "CaseComments" ], "description": "Gets a case comment.", + "deprecated": true, "operationId": "Cases_GetComment", "parameters": [ { @@ -894,6 +912,7 @@ "CaseComments" ], "description": "Creates the case comment.", + "deprecated": true, "operationId": "CaseComments_CreateComment", "parameters": [ { @@ -2106,15 +2125,11 @@ "Action": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" } ], "description": "Action for alert rule.", "properties": { - "etag": { - "description": "Etag of the action.", - "type": "string" - }, "properties": { "$ref": "#/definitions/ActionProperties", "description": "Action properties", @@ -2186,7 +2201,7 @@ "AlertRule": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" }, { "$ref": "#/definitions/AlertRuleKind" @@ -2194,12 +2209,6 @@ ], "description": "Alert rule.", "discriminator": "kind", - "properties": { - "etag": { - "description": "Etag of the alert rule.", - "type": "string" - } - }, "type": "object" }, "AlertRuleKind": { @@ -2209,7 +2218,7 @@ "description": "The kind of the alert rule", "enum": [ "Scheduled", - "Filter", + "MicrosoftSecurityIncidentCreation", "Fusion" ], "type": "string", @@ -2221,7 +2230,7 @@ "value": "Scheduled" }, { - "value": "Filter" + "value": "MicrosoftSecurityIncidentCreation" }, { "value": "Fusion" @@ -2243,10 +2252,69 @@ ], "description": "Alert rule template.", "discriminator": "kind", + "type": "object" + }, + "AlertRuleTemplatePropertiesBase": { + "description": "Base alert rule template property bag.", "properties": { - "etag": { - "description": "Etag of the alert rule.", + "alertRulesCreatedByTemplateCount": { + "description": "the number of alert rules that were created by this template", + "type": "integer" + }, + "createdDateUTC": { + "description": "The time that this alert rule template has been added.", + "format": "date-time", + "readOnly": true, "type": "string" + }, + "description": { + "description": "The description of the alert rule template.", + "type": "string" + }, + "displayName": { + "description": "The display name for alert rule template.", + "type": "string" + }, + "requiredDataConnectors": { + "description": "The required data connectors for this template", + "items": { + "$ref": "#/definitions/DataConnectorStatus" + }, + "type": "array" + }, + "status": { + "description": "The alert rule template status.", + "enum": [ + "Installed", + "Available", + "NotAvailable" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "TemplateStatus", + "values": [ + { + "description": "Alert rule template installed. and can not use more then once", + "value": "Installed" + }, + { + "description": "Alert rule template is available.", + "value": "Available" + }, + { + "description": "Alert rule template is not available", + "value": "NotAvailable" + } + ] + } + }, + "tactics": { + "description": "The tactics of the alert rule template", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" } }, "type": "object" @@ -2315,7 +2383,7 @@ ], "type": "string", "x-ms-enum": { - "modelAsString": false, + "modelAsString": true, "name": "AlertSeverity", "values": [ { @@ -2365,11 +2433,12 @@ "LateralMovement", "Collection", "Exfiltration", - "CommandAndControl" + "CommandAndControl", + "Impact" ], "type": "string", "x-ms-enum": { - "modelAsString": false, + "modelAsString": true, "name": "AttackTactic" } }, @@ -2452,82 +2521,14 @@ }, "type": "object" }, - "BaseAlertRuleTemplateProperties": { - "description": "Base alert rule template property bag.", - "properties": { - "alertRulesCreatedByTemplateCount": { - "description": "the number of alert rules that were created by this template", - "type": "integer" - }, - "createdDateUTC": { - "description": "The time that this alert rule template has been added.", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "The description of the alert rule template.", - "type": "string" - }, - "displayName": { - "description": "The display name for alert rule template.", - "type": "string" - }, - "requiredDataConnectors": { - "description": "The required data connectors for this template", - "items": { - "$ref": "#/definitions/DataConnectorStatus" - }, - "type": "array" - }, - "status": { - "description": "The alert rule template status.", - "enum": [ - "Installed", - "Available", - "NotAvailable" - ], - "type": "string", - "x-ms-enum": { - "modelAsString": false, - "name": "TemplateStatus", - "values": [ - { - "description": "Alert rule template installed. and can not use more then once", - "value": "Installed" - }, - { - "description": "Alert rule template is available.", - "value": "Available" - }, - { - "description": "Alert rule template is not available", - "value": "NotAvailable" - } - ] - } - }, - "tactics": { - "description": "The tactics of the alert rule template", - "items": { - "$ref": "#/definitions/AttackTactic" - }, - "type": "array" - } - }, - "type": "object" - }, "Bookmark": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" } ], "description": "Represents a bookmark in Azure Security Insights.", "properties": { - "etag": { - "description": "Etag of the bookmark.", - "type": "string" - }, "properties": { "$ref": "#/definitions/BookmarkProperties", "description": "Bookmark properties", @@ -2612,15 +2613,11 @@ "Case": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" } ], "description": "Represents a case in Azure Security Insights.", "properties": { - "etag": { - "description": "Etag of the alert rule.", - "type": "string" - }, "properties": { "$ref": "#/definitions/CaseProperties", "description": "Case properties", @@ -3061,7 +3058,7 @@ "DataConnector": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" }, { "$ref": "#/definitions/DataConnectorKind" @@ -3069,12 +3066,6 @@ ], "description": "Data connector.", "discriminator": "kind", - "properties": { - "etag": { - "description": "Etag of the data connector.", - "type": "string" - } - }, "type": "object" }, "DataConnectorDataTypeCommon": { @@ -3180,7 +3171,7 @@ ], "type": "string", "x-ms-enum": { - "modelAsString": false, + "modelAsString": true, "name": "DataTypeStatus" } }, @@ -3790,60 +3781,68 @@ }, "type": "object" }, - "FilterAlertRuleTemplate": { + "FusionAlertRule": { "allOf": [ { - "$ref": "#/definitions/AlertRuleTemplate" + "$ref": "#/definitions/AlertRule" } ], - "description": "Represents filter alert rule template.", + "description": "Represents Fusion alert rule.", "properties": { "properties": { - "allOf": [ - { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" - }, - { - "$ref": "#/definitions/FilterAlertRuleTemplateProperties" - } - ], - "description": "Filter alert rule template properties", - "required": [ - "displayName", - "description", - "createdDateUTC", - "status", - "alertRulesCreatedByTemplateCount", - "filterProduct" - ], + "$ref": "#/definitions/FusionAlertRuleProperties", + "description": "Fusion alert rule properties", "x-ms-client-flatten": true } }, "type": "object", - "x-ms-discriminator-value": "Filter" + "x-ms-discriminator-value": "Fusion" }, - "FilterAlertRuleTemplateProperties": { - "description": "Filter alert rule template property bag.", + "FusionAlertRuleProperties": { + "description": "Fusion alert rule base property bag.", "properties": { - "filterProduct": { - "description": "The filter product name for this template rule.", + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", "type": "string" }, - "filterSeverities": { - "description": "the alert’s severities on which the cases will be generated", - "items": { - "$ref": "#/definitions/AlertSeverity" - }, - "type": "array" + "description": { + "description": "The description of the alert rule.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "readOnly": true, + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule.", + "readOnly": true }, - "filterTitles": { - "description": "the alert’s titles on which the cases will be generated", + "tactics": { + "description": "The tactics of the alert rule", "items": { - "type": "string" + "$ref": "#/definitions/AttackTactic" }, + "readOnly": true, "type": "array" } }, + "required": [ + "alertRuleTemplateName", + "enabled" + ], "type": "object" }, "FusionAlertRuleTemplate": { @@ -3852,23 +3851,26 @@ "$ref": "#/definitions/AlertRuleTemplate" } ], - "description": "Represents fusion alert rule template.", + "description": "Represents Fusion alert rule template.", "properties": { "properties": { "allOf": [ { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" - }, - { - "$ref": "#/definitions/FusionAlertRuleTemplateProperties" + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" } ], "description": "Fusion alert rule template properties", + "properties": { + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule." + } + }, "required": [ "displayName", "description", - "createdDateUTC", "status", + "severity", "alertRulesCreatedByTemplateCount" ], "x-ms-client-flatten": true @@ -3877,16 +3879,6 @@ "type": "object", "x-ms-discriminator-value": "Fusion" }, - "FusionAlertRuleTemplateProperties": { - "description": "Filter alert rule template property bag.", - "properties": { - "severity": { - "$ref": "#/definitions/AlertSeverity", - "description": "The severity for alerts created by this alert rule." - } - }, - "type": "object" - }, "GeoLocation": { "description": "The geo-location context attached to the ip entity", "properties": { @@ -4217,6 +4209,137 @@ }, "type": "object" }, + "MicrosoftSecurityIncidentCreationAlertRule": { + "allOf": [ + { + "$ref": "#/definitions/AlertRule" + } + ], + "description": "Represents MicrosoftSecurityIncidentCreation rule.", + "properties": { + "properties": { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleProperties", + "description": "MicrosoftSecurityIncidentCreation rule properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation" + }, + "MicrosoftSecurityIncidentCreationAlertRuleCommonProperties": { + "description": "MicrosoftSecurityIncidentCreation rule common property bag.", + "properties": { + "displayNamesFilter": { + "description": "the alerts' displayNames on which the cases will be generated", + "items": { + "type": "string" + }, + "type": "array" + }, + "productFilter": { + "description": "The alerts' productName on which the cases will be generated", + "enum": [ + "Microsoft Cloud App Security", + "Azure Security Center", + "Azure Advanced Threat Protection", + "Azure Active Directory Identity Protection" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "MicrosoftSecurityProductName" + } + }, + "severitiesFilter": { + "description": "the alerts' severities on which the cases will be generated", + "items": { + "$ref": "#/definitions/AlertSeverity" + }, + "type": "array" + } + }, + "required": [ + "productFilter" + ], + "type": "object" + }, + "MicrosoftSecurityIncidentCreationAlertRuleProperties": { + "allOf": [ + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleCommonProperties" + } + ], + "description": "MicrosoftSecurityIncidentCreation rule property bag.", + "properties": { + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", + "type": "string" + }, + "description": { + "description": "The description of the alert rule.", + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "tactics": { + "description": "The tactics of the alert rule", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" + } + }, + "required": [ + "displayName", + "enabled", + "productFilter" + ], + "type": "object" + }, + "MicrosoftSecurityIncidentCreationAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents MicrosoftSecurityIncidentCreation rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" + }, + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleCommonProperties" + } + ], + "description": "MicrosoftSecurityIncidentCreation rule template properties", + "required": [ + "displayName", + "description", + "createdDateUTC", + "status", + "alertRulesCreatedByTemplateCount", + "productFilter" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation" + }, "OfficeConsent": { "allOf": [ { @@ -4683,6 +4806,20 @@ }, "x-ms-azure-resource": true }, + "ResourceWithEtag": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "An azure resource object with an Etag property", + "properties": { + "etag": { + "description": "Etag of the azure resource", + "type": "string" + } + } + }, "ScheduledAlertRule": { "allOf": [ { @@ -4700,26 +4837,9 @@ "type": "object", "x-ms-discriminator-value": "Scheduled" }, - "ScheduledAlertRuleProperties": { - "description": "Alert rule property bag.", + "ScheduledAlertRuleCommonProperties": { + "description": "Schedule alert rule template property bag.", "properties": { - "description": { - "description": "The description of the alert rule.", - "type": "string" - }, - "displayName": { - "description": "The display name for alerts created by this alert rule.", - "type": "string" - }, - "enabled": { - "description": "Determines whether this alert rule is enabled or disabled.", - "type": "boolean" - }, - "lastModifiedUtc": { - "description": "The last time that this alert has been modified.", - "readOnly": true, - "type": "string" - }, "query": { "description": "The query that creates alerts for this rule.", "type": "string" @@ -4738,6 +4858,47 @@ "$ref": "#/definitions/AlertSeverity", "description": "The severity for alerts created by this alert rule." }, + "triggerOperator": { + "$ref": "#/definitions/AlertRuleTriggerOperator", + "description": "The operation against the threshold that triggers alert rule." + }, + "triggerThreshold": { + "description": "The threshold triggers this alert rule.", + "type": "integer" + } + }, + "type": "object" + }, + "ScheduledAlertRuleProperties": { + "allOf": [ + { + "$ref": "#/definitions/ScheduledAlertRuleCommonProperties" + } + ], + "description": "Scheduled alert rule base property bag.", + "properties": { + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", + "type": "string" + }, + "description": { + "description": "The description of the alert rule.", + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert rule has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, "suppressionDuration": { "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered.", "format": "duration", @@ -4747,20 +4908,18 @@ "description": "Determines whether the suppression for this alert rule is enabled or disabled.", "type": "boolean" }, - "triggerOperator": { - "$ref": "#/definitions/AlertRuleTriggerOperator", - "description": "The operation against the threshold that triggers alert rule." - }, - "triggerThreshold": { - "description": "The threshold triggers this alert rule.", - "type": "integer" + "tactics": { + "description": "The tactics of the alert rule", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" } }, "required": [ "displayName", - "description", - "severity", "enabled", + "severity", "query", "queryFrequency", "queryPeriod", @@ -4782,19 +4941,17 @@ "properties": { "allOf": [ { - "$ref": "#/definitions/BaseAlertRuleTemplateProperties" + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" }, { - "$ref": "#/definitions/ScheduledAlertRuleTemplateProperties" + "$ref": "#/definitions/ScheduledAlertRuleCommonProperties" } ], "description": "Scheduled alert rule template properties", "required": [ "displayName", "description", - "createdDateUTC", "status", - "requiredDataConnectors", "alertRulesCreatedByTemplateCount", "severity", "query", @@ -4809,38 +4966,6 @@ "type": "object", "x-ms-discriminator-value": "Scheduled" }, - "ScheduledAlertRuleTemplateProperties": { - "description": "Schedule alert rule template property bag.", - "properties": { - "query": { - "description": "The query that creates alerts for this rule.", - "type": "string" - }, - "queryFrequency": { - "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.", - "format": "duration", - "type": "string" - }, - "queryPeriod": { - "description": "The period (in ISO 8601 duration format) that this alert rule looks at.", - "format": "duration", - "type": "string" - }, - "severity": { - "$ref": "#/definitions/AlertSeverity", - "description": "The severity for alerts created by this alert rule." - }, - "triggerOperator": { - "$ref": "#/definitions/AlertRuleTriggerOperator", - "description": "The operation against the threshold that triggers alert rule." - }, - "triggerThreshold": { - "description": "The threshold triggers this alert rule.", - "type": "integer" - } - }, - "type": "object" - }, "SecurityAlert": { "allOf": [ { @@ -5206,7 +5331,7 @@ "Settings": { "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ResourceWithEtag" }, { "$ref": "#/definitions/SettingsKind" @@ -5214,12 +5339,6 @@ ], "description": "The Setting.", "discriminator": "kind", - "properties": { - "etag": { - "description": "Etag of the alert rule.", - "type": "string" - } - }, "type": "object" }, "SettingsKind": { @@ -5721,4 +5840,4 @@ "x-ms-parameter-location": "method" } } -} +} \ No newline at end of file diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json index 761488cfb9cf..be1bf6b9329e 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json @@ -16,26 +16,26 @@ "kind": "Scheduled", "properties": { "severity": "Low", - "query": "\nlet timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n", - "queryFrequency": "1.00:00:00", - "queryPeriod": "1.00:00:00", + "query": "let timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n| extend AccountCustomEntity = UserIdentityUserName, IPCustomEntity = SourceIpAddress", + "queryFrequency": "P1D", + "queryPeriod": "P1D", "triggerOperator": "GreaterThan", "triggerThreshold": 0, - "displayName": "AWS - Changes to VPC settings", - "description": "This alert monitors changes to VPC settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255\n", + "displayName": "Changes to Amazon VPC settings", + "description": "This alert monitors changes to Amazon VPC (Virtual Private Cloud) settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255 \nand https://aws.amazon.com/vpc/", "tactics": [ - "LateralMovement", - "PrivilegeEscalation" + "PrivilegeEscalation", + "LateralMovement" ], - "createdDateUTC": "2019-02-27T00:00:00", - "status": "NotAvailable", + "createdDateUTC": "2019-02-27T00:00:00Z", + "status": "Available", "requiredDataConnectors": [ - { - "connectorId": "AWS", - "dataTypes": { - "AWSCloudTrail": "NotExist" + { + "connectorId": "AWS", + "dataTypes": { + "AWSCloudTrail": "Exist" + } } - } ], "alertRulesCreatedByTemplateCount": 0 } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json index eac47ee14c98..31611d1ace08 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json @@ -17,26 +17,26 @@ "kind": "Scheduled", "properties": { "severity": "Low", - "query": "\nlet timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n", - "queryFrequency": "1.00:00:00", - "queryPeriod": "1.00:00:00", + "query": "let timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n| extend AccountCustomEntity = UserIdentityUserName, IPCustomEntity = SourceIpAddress", + "queryFrequency": "P1D", + "queryPeriod": "P1D", "triggerOperator": "GreaterThan", "triggerThreshold": 0, - "displayName": "AWS - Changes to VPC settings", - "description": "This alert monitors changes to VPC settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255\n", + "displayName": "Changes to Amazon VPC settings", + "description": "This alert monitors changes to Amazon VPC (Virtual Private Cloud) settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255 \nand https://aws.amazon.com/vpc/", "tactics": [ - "LateralMovement", - "PrivilegeEscalation" + "PrivilegeEscalation", + "LateralMovement" ], - "createdDateUTC": "2019-02-27T00:00:00", - "status": "NotAvailable", + "createdDateUTC": "2019-02-27T00:00:00Z", + "status": "Available", "requiredDataConnectors": [ - { - "connectorId": "AWS", - "dataTypes": { - "AWSCloudTrail": "NotExist" + { + "connectorId": "AWS", + "dataTypes": { + "AWSCloudTrail": "Exist" + } } - } ], "alertRulesCreatedByTemplateCount": 0 } @@ -47,36 +47,31 @@ "type": "Microsoft.SecurityInsights/AlertRuleTemplates", "kind": "Fusion", "properties": { - "displayName": "Fusion Detections", + "displayName": "Advanced Multi-Stage Attack Detection", "description": "Place holder: Fusion uses graph powered machine learning algorithms to correlate between millions of lower fidelity anomalous activities from different products such as Azure AD Identity Protection, and Microsoft Cloud App Security, to combine them into a manageable number of interesting security cases.\n", "tactics": [ - "Persistence", - "Exfiltration" + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" ], - "createdDateUTC": "2019-07-25T00:00:00", + "createdDateUTC": "2019-07-25T00:00:00Z", "status": "Available", + "severity": "High", "alertRulesCreatedByTemplateCount": 0 } }, { - "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirInt/providers/Microsoft.SecurityInsights/AlertRuleTemplates/eb7b4e69-085d-44dd-9227-9b0d67af9fe7", - "name": "eb7b4e69-085d-44dd-9227-9b0d67af9fe7", + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb", + "name": "b3cfc7c0-092c-481c-a55b-34a3979758cb", "type": "Microsoft.SecurityInsights/AlertRuleTemplates", - "kind": "Filter", + "kind": "MicrosoftSecurityIncidentCreation", "properties": { - "filterProduct": "Azure Active Directory Identity Protection", - "displayName": "All alerts from AADIP", - "description": "All alerts from AADIP\n", - "createdDateUTC": "2019-07-16T00:00:00", + "productFilter": "Microsoft Cloud App Security", + "displayName": "Create incidents based on Microsoft Cloud App Security alerts", + "description": "Create incidents based on all alerts generated in Microsoft Cloud App Security", + "createdDateUTC": "2019-07-16T00:00:00Z", "status": "Available", - "requiredDataConnectors": [ - { - "connectorId": "AzureActiveDirectoryIdentityProtection", - "dataTypes": { - "SecurityAlert": "Exist" - } - } - ], "alertRulesCreatedByTemplateCount": 0 } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json new file mode 100644 index 000000000000..d3fc30ca7c5c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateFusionAlertRule.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "myFirstFusionRule", + "alertRule": { + "kind": "Fusion", + "etag": "3d00c3ca-0000-0100-0000-5d42d5010000", + "properties": { + "enabled": "true", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 000000000000..3a78f2fc919e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "microsoftSecurityIncidentCreationRuleExample", + "alertRule": { + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "displayName": "testing displayname", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "tactics": [], + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "tactics": [], + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json index ea715332f89b..8c5f6c5f8d8d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json @@ -7,9 +7,6 @@ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", "alertRule": { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "type": "Microsoft.SecurityInsights/alertRules", "kind": "Scheduled", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { @@ -17,6 +14,10 @@ "description": "", "severity": "High", "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", "queryFrequency": "PT1H", "queryPeriod": "P2DT1H30M", @@ -36,10 +37,15 @@ "kind": "Scheduled", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { + "alertRuleTemplateName": null, "displayName": "Rule2", "description": "", "severity": "High", "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", "queryFrequency": "PT1H", "queryPeriod": "P2DT1H30M", @@ -59,17 +65,23 @@ "kind": "Scheduled", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { + "alertRuleTemplateName": null, "displayName": "Rule2", "description": "", "severity": "High", "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", "queryFrequency": "PT1H", "queryPeriod": "P2DT1H30M", "triggerOperator": "GreaterThan", "triggerThreshold": 0, "suppressionDuration": "PT1H", - "suppressionEnabled": false + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json similarity index 100% rename from specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteScheduledAlertRule.json rename to specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/DeleteAlertRule.json diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json new file mode 100644 index 000000000000..d467cb1a1d23 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "alertRuleTemplateName": null, + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "tactics": [], + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"25005c11-0000-0d00-0000-5d6cc0e20000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": false, + "lastModifiedUtc": "2019-09-02T07:12:34.9065092Z" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json new file mode 100644 index 000000000000..d53f95e4c84e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetFusionAlertRule.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "myFirstFusionRule" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 000000000000..2aa4401ba452 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "microsoftSecurityIncidentCreationRuleExample" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "tactics": [], + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json similarity index 90% rename from specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRuleById.json rename to specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json index 21dd07939632..cdb33a0877af 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRuleById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json @@ -16,10 +16,15 @@ "kind": "Scheduled", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { + "alertRuleTemplateName": null, "displayName": "Rule2", "description": "", "severity": "High", "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", "queryFrequency": "PT1H", "queryPeriod": "P2DT1H30M", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRules.json deleted file mode 100644 index 53be777607c7..000000000000 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRules.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "api-version": "2019-01-01-preview", - "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", - "resourceGroupName": "myRg", - "workspaceName": "myWorkspace", - "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", - "type": "Microsoft.SecurityInsights/alertRules", - "kind": "Scheduled", - "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", - "properties": { - "displayName": "Rule2", - "description": "", - "severity": "High", - "enabled": true, - "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", - "queryFrequency": "PT1H", - "queryPeriod": "P2DT1H30M", - "triggerOperator": "GreaterThan", - "triggerThreshold": 0, - "suppressionDuration": "PT1H", - "suppressionEnabled": false, - "lastModifiedUtc": "2019-01-01T13:15:30Z" - } - } - ] - } - } - } -} diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/SBNetworkRuleSetList.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/SBNetworkRuleSetList.json new file mode 100644 index 000000000000..e9a8c5c8a726 --- /dev/null +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/examples/NameSpaces/VirtualNetworkRule/SBNetworkRuleSetList.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2017-04-01", + "subscriptionId": "Subscription" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionid/resourceGroups/resourcegroupid/providers/Microsoft.ServiceBus/namespaces/sdk-Namespace-9659/networkrulesets/default", + "name": "default", + "type": "Microsoft.ServiceBus/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "virtualNetworkRules": [ + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet2" + }, + "ignoreMissingVnetServiceEndpoint": true + }, + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet3" + }, + "ignoreMissingVnetServiceEndpoint": false + }, + { + "subnet": { + "id": "/subscriptions/subscriptionid/resourcegroups/resourcegroupid/providers/Microsoft.Network/virtualNetworks/myvn/subnets/subnet6" + }, + "ignoreMissingVnetServiceEndpoint": false + } + ], + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json index 749a1454cf39..2970266db160 100644 --- a/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json +++ b/specification/servicebus/resource-manager/Microsoft.ServiceBus/stable/2017-04-01/servicebus.json @@ -3212,6 +3212,51 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets": { + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetList": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/SBNetworkRuleSetList.json" + } + }, + "operationId": "Namespaces_ListNetworkRuleSets", + "description": "Gets list of NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of NetworkRuleSets for Namespace successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSetListResult" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } } }, "definitions": { @@ -4185,10 +4230,11 @@ "description": "The SQL expression. e.g. MyProperty='ABC'" }, "compatibilityLevel": { - "readOnly": true, "format": "int32", "type": "integer", "default": 20, + "minimum": 20, + "maximum": 20, "description": "This property is reserved for future use. An integer value showing the compatibility level, currently hard-coded to 20." }, "requiresPreprocessing": { @@ -4716,6 +4762,22 @@ } ], "description": "Description of NetworkRuleSet resource." + }, + "NetworkRuleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "Result of the List NetworkRuleSet operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of NetworkRuleSet." + } + }, + "description": "The response of the List NetworkRuleSet operation." } }, "parameters": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json new file mode 100644 index 000000000000..b30fd859c7a8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCompleteExternalRestore.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "managedInstanceName": "myManagedInstanceName", + "databaseName": "myDatabase", + "api-version": "2018-06-01-preview", + "parameters": { + "lastBackupName": "testdb1_log4" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMax.json new file mode 100644 index 000000000000..65706e3c02c8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMax.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2017-03-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMin.json new file mode 100644 index 000000000000..4143d1c4dfee --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateMin.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json new file mode 100644 index 000000000000..2f950088217f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreatePointInTimeRestore.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "PointInTimeRestore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb", + "restorePointInTime": "2017-07-14T05:35:31.503Z" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRecovery.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRecovery.json new file mode 100644 index 000000000000..c3b09e772765 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRecovery.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "server1", + "databaseName": "testdb_recovered", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "Recovery", + "recoverableDatabaseId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/Default-SQL-WestEurope/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/server1/recoverableDatabases/testdb_recovered", + "name": "testdb_recovered", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb_recovered", + "name": "testdb_recovered", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json new file mode 100644 index 000000000000..c95c4f12808e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreExternalBackup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2017-03-01-preview", + "parameters": { + "properties": { + "createMode": "RestoreExternalBackup", + "storageContainerUri": "https://myaccountname.blob.core.windows.net/backups", + "storageContainerSasToken": "sv=2015-12-11&sr=c&sp=rl&sig=1234", + "collation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseDelete.json new file mode 100644 index 000000000000..55ffcdc82e4a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseGet.json new file mode 100644 index 000000000000..6f1addb900ce --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2015-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb1", + "location": "southeastasia", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseListByManagedInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseListByManagedInstance.json new file mode 100644 index 000000000000..1d4f9899720a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseListByManagedInstance.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Test1", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2015-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb1", + "location": "southeastasia", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testcl/databases/testdb2", + "location": "southeastasia", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "creationDate": "2017-08-04T15:00:17.73Z", + "defaultSecondaryLocation": "North Europe", + "status": "Online" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseRestoreDetails.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseRestoreDetails.json new file mode 100644 index 000000000000..6c7912c790db --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseRestoreDetails.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "restoreDetailsName": "Default", + "api-version": "2018-06-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "status": "Restoring", + "currentRestoringFileName": "full_0", + "percentCompleted": 0.0, + "unrestorableFiles": [], + "numberOfFilesDetected": 26, + "lastUploadedFileName": "log2_3", + "lastUploadedFileTime": "2018-06-15T11:38:33Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/databases/testdb/restoreDetails/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/restoreDetails" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMax.json new file mode 100644 index 000000000000..fea44768a241 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMax.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2017-03-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb" + }, + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMin.json new file mode 100644 index 000000000000..fea44768a241 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseUpdateMin.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "api-version": "2017-03-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb" + }, + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": { } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json new file mode 100644 index 000000000000..01adb7f491b8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json @@ -0,0 +1,820 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/restoreDetails/{restoreDetailsName}": { + "get": { + "tags": [ + "ManagedDatabaseRestoreDetails" + ], + "description": "Gets managed database restore details.", + "operationId": "ManagedDatabaseRestoreDetails_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restoreDetailsName", + "in": "path", + "description": "The name of the restore details to retrieve.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "RestoreDetailsName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved restore details.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 BackupSetNotFound - \"No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 ManagedDatabaseNotInRestoringState - Managed database is not in Restoring state." + } + }, + "x-ms-examples": { + "Managed database restore details.": { + "$ref": "./examples/ManagedDatabaseRestoreDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases": { + "get": { + "tags": [ + "ManagedDatabases" + ], + "description": "Gets a list of managed databases.", + "operationId": "ManagedDatabases_ListByInstance", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List databases by managed instances": { + "$ref": "./examples/ManagedDatabaseListByManagedInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}": { + "get": { + "tags": [ + "ManagedDatabases" + ], + "description": "Gets a managed database.", + "operationId": "ManagedDatabases_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a managed database": { + "$ref": "./examples/ManagedDatabaseGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedDatabases" + ], + "description": "Creates a new database or updates an existing database.", + "operationId": "ManagedDatabases_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a new managed database with minimal properties": { + "$ref": "./examples/ManagedDatabaseCreateMin.json" + }, + "Creates a new managed database with maximal properties": { + "$ref": "./examples/ManagedDatabaseCreateMax.json" + }, + "Creates a new managed database using point in time restore": { + "$ref": "./examples/ManagedDatabaseCreatePointInTimeRestore.json" + }, + "Creates a new managed database by restoring from an external backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreExternalBackup.json" + }, + "Creates a new managed database from restoring a geo-replicated backup": { + "$ref": "./examples/ManagedDatabaseCreateRecovery.json" + } + } + }, + "delete": { + "tags": [ + "ManagedDatabases" + ], + "description": "Deletes a managed database.", + "operationId": "ManagedDatabases_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the managed database." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 GeoReplicationDatabaseNotPrimary - The operation cannot be performed since the database '{0}' is a replication target.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DropDisallowedDuringFailover - Can not drop database because a failover operation is in progress on the failover group.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Deleting the managed database is in progress." + }, + "204": { + "description": "The specified managed database does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete managed database": { + "$ref": "./examples/ManagedDatabaseDelete.json" + } + } + }, + "patch": { + "tags": [ + "ManagedDatabases" + ], + "description": "Updates an existing database.", + "operationId": "ManagedDatabases_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedDatabaseUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/ManagedDatabase" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Updating the managed database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a managed database with minimal properties": { + "$ref": "./examples/ManagedDatabaseUpdateMin.json" + }, + "Updates a managed database with maximal properties": { + "$ref": "./examples/ManagedDatabaseUpdateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/completeRestore": { + "post": { + "tags": [ + "ManagedDatabases" + ], + "description": "Completes the restore operation on a managed database.", + "operationId": "ManagedDatabases_CompleteRestore", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The definition for completing the restore of this managed database.", + "required": true, + "schema": { + "$ref": "#/definitions/CompleteDatabaseRestoreDefinition" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed restore request." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCompleteRestoreRequest - The complete database restore request is invalid\n\n * 400 InvalidDatabaseCompleteRestoreRequestLastBackupName - The last backup name is invalid\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 BackupSetNotFound - \"No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit." + }, + "202": { + "description": "Completing restore request is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Completes a managed database external backup restore.": { + "$ref": "./examples/ManagedDatabaseCompleteExternalRestore.json" + } + } + } + } + }, + "definitions": { + "ManagedDatabaseRestoreDetailsProperties": { + "description": "The managed database's restore details properties.", + "type": "object", + "properties": { + "status": { + "description": "Restore status.", + "type": "string", + "readOnly": true + }, + "currentRestoringFileName": { + "description": "Current restoring file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileName": { + "description": "Last restored file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileTime": { + "format": "date-time", + "description": "Last restored file time.", + "type": "string", + "readOnly": true + }, + "percentCompleted": { + "format": "double", + "description": "Percent completed.", + "type": "number", + "readOnly": true + }, + "unrestorableFiles": { + "description": "List of unrestorable files.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "numberOfFilesDetected": { + "format": "int64", + "description": "Number of files detected.", + "type": "integer", + "readOnly": true + }, + "lastUploadedFileName": { + "description": "Last uploaded file name.", + "type": "string", + "readOnly": true + }, + "lastUploadedFileTime": { + "format": "date-time", + "description": "Last uploaded file time.", + "type": "string", + "readOnly": true + }, + "blockReason": { + "description": "The reason why restore is in Blocked state.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ManagedDatabaseRestoreDetailsResult": { + "description": "A managed database restore details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedDatabaseListResult": { + "description": "A list of managed databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedDatabase" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedDatabaseProperties": { + "description": "The managed database's properties.", + "type": "object", + "properties": { + "collation": { + "description": "Collation of the managed database.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "status": { + "description": "Status of the database.", + "enum": [ + "Online", + "Offline", + "Shutdown", + "Creating", + "Inaccessible", + "Restoring", + "Updating" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ManagedDatabaseStatus", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "Creation date of the database.", + "type": "string", + "readOnly": true + }, + "earliestRestorePoint": { + "format": "date-time", + "description": "Earliest restore point in time for point in time restore.", + "type": "string", + "readOnly": true + }, + "restorePointInTime": { + "format": "date-time", + "description": "Conditional. If createMode is PointInTimeRestore, this value is required. Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "defaultSecondaryLocation": { + "description": "Geo paired region.", + "type": "string", + "readOnly": true + }, + "catalogCollation": { + "description": "Collation of the metadata catalog.", + "enum": [ + "DATABASE_DEFAULT", + "SQL_Latin1_General_CP1_CI_AS" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogCollationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "createMode": { + "description": "Managed database create mode. PointInTimeRestore: Create a database by restoring a point in time backup of an existing database. SourceDatabaseName, SourceManagedInstanceName and PointInTime must be specified. RestoreExternalBackup: Create a database by restoring from external backup files. Collation, StorageContainerUri and StorageContainerSasToken must be specified. Recovery: Creates a database by restoring a geo-replicated backup. RecoverableDatabaseId must be specified as the recoverable database resource ID to restore.", + "enum": [ + "Default", + "RestoreExternalBackup", + "PointInTimeRestore", + "Recovery" + ], + "type": "string", + "x-ms-enum": { + "name": "ManagedDatabaseCreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "storageContainerUri": { + "description": "Conditional. If createMode is RestoreExternalBackup, this value is required. Specifies the uri of the storage container where backups for this restore are stored.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sourceDatabaseId": { + "description": "The resource identifier of the source database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "restorableDroppedDatabaseId": { + "description": "The restorable dropped database resource id to restore when creating this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "storageContainerSasToken": { + "description": "Conditional. If createMode is RestoreExternalBackup, this value is required. Specifies the storage container sas token.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "failoverGroupId": { + "description": "Instance Failover Group resource identifier that this managed database belongs to.", + "type": "string", + "readOnly": true + }, + "recoverableDatabaseId": { + "description": "The resource identifier of the recoverable database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "TrackedResource": { + "description": "ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ManagedDatabase": { + "description": "A managed database resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedDatabaseUpdate": { + "description": "An managed database update.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "CompleteDatabaseRestoreDefinition": { + "description": "Contains the information necessary to perform a complete database restore operation.", + "required": [ + "lastBackupName" + ], + "type": "object", + "properties": { + "lastBackupName": { + "description": "The last backup name to apply", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index dfb54fe3964d..01b866a42ea2 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -88,7 +88,6 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json -- Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json @@ -121,6 +120,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -185,7 +185,6 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json -- Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json @@ -216,6 +215,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -274,7 +274,6 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json -- Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json @@ -305,6 +304,7 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - Microsoft.Sql/preview/2018-06-01-preview/usages.json - Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -476,6 +476,7 @@ input-file: - ./Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - ./Microsoft.Sql/preview/2018-06-01-preview/usages.json - ./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json + - ./Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - ./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - ./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -778,7 +779,6 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/jobs.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json @@ -811,6 +811,7 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/usages.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json + - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json @@ -825,6 +826,7 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json + - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/restorePoints.json - $(this-folder)/Microsoft.Sql/stable/2015-05-01/capabilities.json - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json @@ -835,6 +837,7 @@ input-file: - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/usages.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json + - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json diff --git a/specification/storage/data-plane/Microsoft.StorageDataLake/preview/2018-06-17/DataLakeStorage.json b/specification/storage/data-plane/Microsoft.StorageDataLake/preview/2018-06-17/DataLakeStorage.json index 144de7b75b08..347cb3949da6 100644 --- a/specification/storage/data-plane/Microsoft.StorageDataLake/preview/2018-06-17/DataLakeStorage.json +++ b/specification/storage/data-plane/Microsoft.StorageDataLake/preview/2018-06-17/DataLakeStorage.json @@ -21,7 +21,6 @@ ] }, "schemes": [ - "http", "https" ], "produces": [ diff --git a/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2018-11-09/DataLakeStorage.json b/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2018-11-09/DataLakeStorage.json index 62bed5b267ac..a47ab8e5b2cf 100644 --- a/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2018-11-09/DataLakeStorage.json +++ b/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2018-11-09/DataLakeStorage.json @@ -21,7 +21,6 @@ ] }, "schemes": [ - "http", "https" ], "produces": [ diff --git a/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2019-10-31/DataLakeStorage.json b/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2019-10-31/DataLakeStorage.json new file mode 100644 index 000000000000..94b359cc55d6 --- /dev/null +++ b/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2019-10-31/DataLakeStorage.json @@ -0,0 +1,1922 @@ +{ + "swagger": "2.0", + "info": { + "description": "Azure Data Lake Storage provides storage for Hadoop and other big data workloads.", + "title": "Azure Data Lake Storage REST API", + "version": "2019-10-31", + "x-ms-code-generation-settings": { + "internalConstructors": true, + "name": "DataLakeStorageClient" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{accountName}.{dnsSuffix}", + "parameters": [ + { + "$ref": "#/parameters/accountName" + }, + { + "$ref": "#/parameters/dnsSuffix" + } + ] + }, + "schemes": [ + "http", + "https" + ], + "produces": [ + "application/json" + ], + "tags": [ + { + "name": "Account Operations" + }, + { + "name": "Filesystem Operations" + }, + { + "name": "File and Directory Operations" + } + ], + "parameters": { + "Version": { + "description": "Specifies the version of the REST protocol used for processing the request. This is required when using shared key authorization.", + "in": "header", + "name": "x-ms-version", + "required": false, + "type": "string", + "x-ms-parameter-location": "client" + }, + "accountName": { + "description": "The Azure Storage account name.", + "in": "path", + "name": "accountName", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + }, + "dnsSuffix": { + "default": "dfs.core.windows.net", + "description": "The DNS suffix for the Azure Data Lake Storage endpoint.", + "in": "path", + "name": "dnsSuffix", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "definitions": { + "DataLakeStorageError": { + "properties": { + "error": { + "description": "The service error response object.", + "properties": { + "code": { + "description": "The service error code.", + "type": "string" + }, + "message": { + "description": "The service error message.", + "type": "string" + } + } + } + } + }, + "Path": { + "properties": { + "name": { + "type": "string" + }, + "isDirectory": { + "default": false, + "type": "boolean" + }, + "lastModified": { + "type": "string" + }, + "eTag": { + "type": "string" + }, + "contentLength": { + "type": "integer", + "format": "int64" + }, + "owner": { + "type": "string" + }, + "group": { + "type": "string" + }, + "permissions": { + "type": "string" + } + } + }, + "PathList": { + "properties": { + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "Filesystem": { + "properties": { + "name": { + "type": "string" + }, + "lastModified": { + "type": "string" + }, + "eTag": { + "type": "string" + } + } + }, + "FilesystemList": { + "properties": { + "filesystems": { + "type": "array", + "items": { + "$ref": "#/definitions/Filesystem" + } + } + } + } + }, + "responses": { + "ErrorResponse": { + "description": "An error occurred. The possible HTTP status, code, and message strings are listed below:\n* 400 Bad Request, ContentLengthMustBeZero, \"The Content-Length request header must be zero.\"\n* 400 Bad Request, InvalidAuthenticationInfo, \"Authentication information is not given in the correct format. Check the value of Authorization header.\"\n* 400 Bad Request, InvalidFlushPosition, \"The uploaded data is not contiguous or the position query parameter value is not equal to the length of the file after appending the uploaded data.\"\n* 400 Bad Request, InvalidHeaderValue, \"The value for one of the HTTP headers is not in the correct format.\"\n* 400 Bad Request, InvalidHttpVerb, \"The HTTP verb specified is invalid - it is not recognized by the server.\"\n* 400 Bad Request, InvalidInput, \"One of the request inputs is not valid.\"\n* 400 Bad Request, InvalidPropertyName, \"A property name cannot be empty.\"\n* 400 Bad Request, InvalidPropertyName, \"The property name contains invalid characters.\"\n* 400 Bad Request, InvalidQueryParameterValue, \"Value for one of the query parameters specified in the request URI is invalid.\"\n* 400 Bad Request, InvalidResourceName, \"The specified resource name contains invalid characters.\"\n* 400 Bad Request, InvalidSourceUri, \"The source URI is invalid.\"\n* 400 Bad Request, InvalidUri, \"The request URI is invalid.\"\n* 400 Bad Request, MissingRequiredHeader, \"An HTTP header that's mandatory for this request is not specified.\"\n* 400 Bad Request, MissingRequiredQueryParameter, \"A query parameter that's mandatory for this request is not specified.\"\n* 400 Bad Request, MultipleConditionHeadersNotSupported, \"Multiple condition headers are not supported.\"\n* 400 Bad Request, OutOfRangeInput, \"One of the request inputs is out of range.\"\n* 400 Bad Request, OutOfRangeQueryParameterValue, \"One of the query parameters specified in the request URI is outside the permissible range.\"\n* 400 Bad Request, UnsupportedHeader, \"One of the headers specified in the request is not supported.\"\n* 400 Bad Request, UnsupportedQueryParameter, \"One of the query parameters specified in the request URI is not supported.\"\n* 400 Bad Request, UnsupportedRestVersion, \"The specified Rest Version is Unsupported.\"\n* 403 Forbidden, AccountIsDisabled, \"The specified account is disabled.\"\n* 403 Forbidden, AuthorizationFailure, \"This request is not authorized to perform this operation.\"\n* 403 Forbidden, InsufficientAccountPermissions, \"The account being accessed does not have sufficient permissions to execute this operation.\"\n* 404 Not Found, FilesystemNotFound, \"The specified filesystem does not exist.\"\n* 404 Not Found, PathNotFound, \"The specified path does not exist.\"\n* 404 Not Found, RenameDestinationParentPathNotFound, \"The parent directory of the destination path does not exist.\"\n* 404 Not Found, ResourceNotFound, \"The specified resource does not exist.\"\n* 404 Not Found, SourcePathNotFound, \"The source path for a rename operation does not exist.\"\n* 405 Method Not Allowed, UnsupportedHttpVerb, \"The resource doesn't support the specified HTTP verb.\"\n* 409 Conflict, DestinationPathIsBeingDeleted, \"The specified destination path is marked to be deleted.\"\n* 409 Conflict, DirectoryNotEmpty, \"The recursive query parameter value must be true to delete a non-empty directory.\"\n* 409 Conflict, FilesystemAlreadyExists, \"The specified filesystem already exists.\"\n* 409 Conflict, FilesystemBeingDeleted, \"The specified filesystem is being deleted.\"\n* 409 Conflict, InvalidDestinationPath, \"The specified path, or an element of the path, exists and its resource type is invalid for this operation.\"* 409 Conflict, InvalidFlushOperation, \"The resource was created or modified by the Blob Service API and cannot be written to by the Data Lake Storage Service API.\"\n* 409 Conflict, InvalidRenameSourcePath, \"The source directory cannot be the same as the destination directory, nor can the destination be a subdirectory of the source directory.\"\n* 409 Conflict, InvalidSourceOrDestinationResourceType, \"The source and destination resource type must be identical.\"\n* 409 Conflict, LeaseAlreadyPresent, \"There is already a lease present.\"\n* 409 Conflict, LeaseIdMismatchWithLeaseOperation, \"The lease ID specified did not match the lease ID for the resource with the specified lease operation.\"\n* 409 Conflict, LeaseIsAlreadyBroken, \"The lease has already been broken and cannot be broken again.\"\n* 409 Conflict, LeaseIsBreakingAndCannotBeAcquired, \"The lease ID matched, but the lease is currently in breaking state and cannot be acquired until it is broken.\"\n* 409 Conflict, LeaseIsBreakingAndCannotBeChanged, \"The lease ID matched, but the lease is currently in breaking state and cannot be changed.\"\n* 409 Conflict, LeaseIsBrokenAndCannotBeRenewed, \"The lease ID matched, but the lease has been broken explicitly and cannot be renewed.\"\n* 409 Conflict, LeaseNameMismatch, \"The lease name specified did not match the existing lease name.\"\n* 409 Conflict, LeaseNotPresentWithLeaseOperation, \"The lease ID is not present with the specified lease operation.\"\n* 409 Conflict, PathAlreadyExists, \"The specified path already exists.\"\n* 409 Conflict, PathConflict, \"The specified path, or an element of the path, exists and its resource type is invalid for this operation.\"\n* 409 Conflict, SourcePathIsBeingDeleted, \"The specified source path is marked to be deleted.\"\n* 409 Conflict, ResourceTypeMismatch, \"The resource type specified in the request does not match the type of the resource.\"\n* 412 Precondition Failed, ConditionNotMet, \"The condition specified using HTTP conditional header(s) is not met.\"\n* 412 Precondition Failed, LeaseIdMismatch, \"The lease ID specified did not match the lease ID for the resource.\"\n* 412 Precondition Failed, LeaseIdMissing, \"There is currently a lease on the resource and no lease ID was specified in the request.\"\n* 412 Precondition Failed, LeaseNotPresent, \"There is currently no lease on the resource.\"\n* 412 Precondition Failed, LeaseLost, \"A lease ID was specified, but the lease for the resource has expired.\"\n* 412 Precondition Failed, SourceConditionNotMet, \"The source condition specified using HTTP conditional header(s) is not met.\"\n* 413 Request Entity Too Large, RequestBodyTooLarge, \"The request body is too large and exceeds the maximum permissible limit.\"\n* 416 Requested Range Not Satisfiable, InvalidRange, \"The range specified is invalid for the current size of the resource.\"\n* 500 Internal Server Error, InternalError, \"The server encountered an internal error. Please retry the request.\"\n* 500 Internal Server Error, OperationTimedOut, \"The operation could not be completed within the permitted time.\"\n* 503 Service Unavailable, ServerBusy, \"Egress is over the account limit.\"\n* 503 Service Unavailable, ServerBusy, \"Ingress is over the account limit.\"\n* 503 Service Unavailable, ServerBusy, \"Operations per second is over the account limit.\"\n* 503 Service Unavailable, ServerBusy, \"The server is currently unable to receive requests. Please retry your request.\"", + "headers": { + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/DataLakeStorageError" + } + } + }, + "paths": { + "/": { + "get": { + "operationId": "Filesystem_List", + "summary": "List Filesystems", + "description": "List filesystems and their properties in given account.", + "x-ms-pageable": { + "itemName": "filesystems", + "nextLinkName": null + }, + "tags": [ + "Account Operations" + ], + "responses": { + "200": { + "description": "OK", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-continuation": { + "description": "If the number of filesystems to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the filesystems.", + "type": "string" + }, + "Content-Type": { + "description": "The content type of list filesystem response. The default content type is application/json.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FilesystemList" + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "resource", + "in": "query", + "description": "The value must be \"account\" for all account operations.", + "required": true, + "type": "string", + "enum": [ + "account" + ], + "x-ms-enum": { + "name": "AccountResourceType", + "modelAsString": false + } + }, + { + "name": "prefix", + "in": "query", + "description": "Filters results to filesystems within the specified prefix.", + "required": false, + "type": "string" + }, + { + "name": "continuation", + "in": "query", + "description": "The number of filesystems returned with each invocation is limited. If the number of filesystems to be returned exceeds this limit, a continuation token is returned in the response header x-ms-continuation. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the filesystems.", + "required": false, + "type": "string" + }, + { + "name": "maxResults", + "in": "query", + "description": "An optional value that specifies the maximum number of items to return. If omitted or greater than 5,000, the response will include up to 5,000 items.", + "format": "int32", + "minimum": 1, + "required": false, + "type": "integer" + }, + { + "name": "x-ms-client-request-id", + "description": "A UUID recorded in the analytics logs for troubleshooting and correlation.", + "in": "header", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string", + "x-ms-client-request-id": true + }, + { + "name": "timeout", + "in": "query", + "description": "An optional operation timeout value in seconds. The period begins when the request is received by the service. If the timeout value elapses before the operation completes, the operation fails.", + "format": "int32", + "minimum": 1, + "required": false, + "type": "integer" + }, + { + "name": "x-ms-date", + "in": "header", + "description": "Specifies the Coordinated Universal Time (UTC) for the request. This is required when using shared key authorization.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Version" + } + ] + } + }, + "/{filesystem}": { + "put": { + "operationId": "Filesystem_Create", + "summary": "Create Filesystem", + "description": "Create a filesystem rooted at the specified location. If the filesystem already exists, the operation fails. This operation does not support conditional HTTP requests.", + "tags": [ + "Filesystem Operations" + ], + "responses": { + "201": { + "description": "Created", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the filesystem.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the filesystem was last modified. Operations on files and directories do not affect the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-namespace-enabled": { + "description": "A bool string indicates whether the namespace feature is enabled. If \"true\", the namespace is enabled for the filesystem. ", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "x-ms-properties", + "description": "User-defined properties to be stored with the filesystem, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "patch": { + "operationId": "Filesystem_SetProperties", + "summary": "Set Filesystem Properties", + "description": "Set properties for the filesystem. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "tags": [ + "Filesystem Operations" + ], + "responses": { + "200": { + "description": "Ok", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the filesystem. Changes to filesystem properties affect the entity tag, but operations on files and directories do not.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the filesystem was last modified. Changes to filesystem properties update the last modified time, but operations on files and directories do not.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "x-ms-properties", + "description": "Optional. User-defined properties to be stored with the filesystem, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set. If the filesystem exists, any properties not included in the list will be removed. All properties are removed if the header is omitted. To merge new and existing properties, first get all existing properties and the current E-Tag, then make a conditional request with the E-Tag and include values for all properties.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "get": { + "operationId": "Path_List", + "summary": "List Paths", + "description": "List filesystem paths and their properties.", + "x-ms-pageable": { + "itemName": "paths", + "nextLinkName": null + }, + "tags": [ + "Filesystem Operations" + ], + "responses": { + "200": { + "description": "Ok", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the filesystem. Changes to filesystem properties affect the entity tag, but operations on files and directories do not.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the filesystem was last modified. Changes to filesystem properties update the last modified time, but operations on files and directories do not.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-continuation": { + "description": "If the number of paths to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the paths.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/PathList" + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "directory", + "in": "query", + "description": "Filters results to paths within the specified directory. An error occurs if the directory does not exist.", + "required": false, + "type": "string" + }, + { + "name": "recursive", + "in": "query", + "description": "If \"true\", all paths are listed; otherwise, only paths at the root of the filesystem are listed. If \"directory\" is specified, the list will only include paths that share the same root.", + "required": true, + "type": "boolean" + }, + { + "name": "continuation", + "in": "query", + "description": "The number of paths returned with each invocation is limited. If the number of paths to be returned exceeds this limit, a continuation token is returned in the response header x-ms-continuation. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the paths.", + "required": false, + "type": "string" + }, + { + "name": "maxResults", + "in": "query", + "description": "An optional value that specifies the maximum number of items to return. If omitted or greater than 5,000, the response will include up to 5,000 items.", + "format": "int32", + "minimum": 1, + "required": false, + "type": "integer" + }, + { + "name": "upn", + "in": "query", + "description": "Optional. Valid only when Hierarchical Namespace is enabled for the account. If \"true\", the user identity values returned in the owner and group fields of each list entry will be transformed from Azure Active Directory Object IDs to User Principal Names. If \"false\", the values will be returned as Azure Active Directory Object IDs. The default value is false. Note that group and application Object IDs are not translated because they do not have unique friendly names.", + "required": false, + "type": "boolean" + } + ] + }, + "head": { + "operationId": "Filesystem_GetProperties", + "summary": "Get Filesystem Properties.", + "description": "All system and user-defined filesystem properties are specified in the response headers.", + "tags": [ + "Filesystem Operations" + ], + "responses": { + "200": { + "description": "Ok", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the filesystem. Changes to filesystem properties affect the entity tag, but operations on files and directories do not.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the filesystem was last modified. Changes to filesystem properties update the last modified time, but operations on files and directories do not.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-properties": { + "description": "The user-defined properties associated with the filesystem. A comma-separated list of name and value pairs in the format \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "type": "string" + }, + "x-ms-namespace-enabled": { + "description": "A bool string indicates whether the namespace feature is enabled. If \"true\", the namespace is enabled for the filesystem. ", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + } + }, + "delete": { + "operationId": "Filesystem_Delete", + "summary": "Delete Filesystem", + "description": "Marks the filesystem for deletion. When a filesystem is deleted, a filesystem with the same identifier cannot be created for at least 30 seconds. While the filesystem is being deleted, attempts to create a filesystem with the same identifier will fail with status code 409 (Conflict), with the service returning additional error information indicating that the filesystem is being deleted. All other operations, including operations on any files or directories within the filesystem, will fail with status code 404 (Not Found) while the filesystem is being deleted. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "tags": [ + "Filesystem Operations" + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "parameters": [ + { + "name": "filesystem", + "in": "path", + "description": "The filesystem identifier. The value must start and end with a letter or number and must contain only letters, numbers, and the dash (-) character. Consecutive dashes are not permitted. All letters must be lowercase. The value must have between 3 and 63 characters.", + "pattern": "^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$", + "minLength": 3, + "maxLength": 63, + "required": true, + "type": "string" + }, + { + "name": "resource", + "in": "query", + "description": "The value must be \"filesystem\" for all filesystem operations.", + "required": true, + "type": "string", + "enum": [ + "filesystem" + ], + "x-ms-enum": { + "name": "FilesystemResourceType", + "modelAsString": false + } + }, + { + "name": "x-ms-client-request-id", + "description": "A UUID recorded in the analytics logs for troubleshooting and correlation.", + "in": "header", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string", + "x-ms-client-request-id": true + }, + { + "name": "timeout", + "in": "query", + "description": "An optional operation timeout value in seconds. The period begins when the request is received by the service. If the timeout value elapses before the operation completes, the operation fails.", + "format": "int32", + "minimum": 1, + "required": false, + "type": "integer" + }, + { + "name": "x-ms-date", + "in": "header", + "description": "Specifies the Coordinated Universal Time (UTC) for the request. This is required when using shared key authorization.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Version" + } + ] + }, + "/{filesystem}/{path}": { + "put": { + "operationId": "Path_Create", + "summary": "Create File | Create Directory | Rename File | Rename Directory", + "description": "Create or rename a file or directory. By default, the destination is overwritten and if the destination already exists and has a lease the lease is broken. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations). To fail if the destination already exists, use a conditional request with If-None-Match: \"*\".", + "consumes": [ + "application/octet-stream" + ], + "tags": [ + "File and Directory Operations" + ], + "responses": { + "201": { + "description": "The file or directory was created.", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-continuation": { + "description": "When renaming a directory, the number of paths that are renamed with each invocation is limited. If the number of paths to be renamed exceeds this limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the rename operation to continue renaming the directory.", + "type": "string" + }, + "Content-Length": { + "description": "The size of the resource in bytes.", + "type": "integer", + "format": "int64" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "resource", + "in": "query", + "description": "Required only for Create File and Create Directory. The value must be \"file\" or \"directory\".", + "required": false, + "type": "string", + "enum": [ + "directory", + "file" + ], + "x-ms-enum": { + "name": "PathResourceType", + "modelAsString": false + } + }, + { + "name": "continuation", + "in": "query", + "description": "Optional. When renaming a directory, the number of paths that are renamed with each invocation is limited. If the number of paths to be renamed exceeds this limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the rename operation to continue renaming the directory.", + "required": false, + "type": "string" + }, + { + "name": "mode", + "in": "query", + "description": "Optional. Valid only when namespace is enabled. This parameter determines the behavior of the rename operation. The value must be \"legacy\" or \"posix\", and the default value will be \"posix\". ", + "required": false, + "type": "string", + "enum": [ + "legacy", + "posix" + ], + "x-ms-enum": { + "name": "PathRenameMode", + "modelAsString": false + } + }, + { + "name": "Cache-Control", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Cache-Control\" response header for \"Read File\" operations for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "Content-Encoding", + "in": "header", + "description": "Optional. Specifies which content encodings have been applied to the file. This value is returned to the client when the \"Read File\" operation is performed.", + "required": false, + "type": "string" + }, + { + "name": "Content-Language", + "in": "header", + "description": "Optional. Specifies the natural language used by the intended audience for the file.", + "required": false, + "type": "string" + }, + { + "name": "Content-Disposition", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Content-Disposition\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-cache-control", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Cache-Control\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-type", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Content-Type\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-encoding", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Content-Encoding\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-language", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Content-Language\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-disposition", + "in": "header", + "description": "Optional. The service stores this value and includes it in the \"Content-Disposition\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-rename-source", + "in": "header", + "description": "An optional file or directory to be renamed. The value must have the following format: \"/{filesystem}/{path}\". If \"x-ms-properties\" is specified, the properties will overwrite the existing properties; otherwise, the existing properties will be preserved. This value must be a URL percent-encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Optional. A lease ID for the path specified in the URI. The path to be overwritten must have an active lease and the lease ID must match.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "x-ms-source-lease-id", + "in": "header", + "description": "Optional for rename operations. A lease ID for the source path. The source path must have an active lease and the lease ID must match.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "x-ms-properties", + "description": "Optional. User-defined properties to be stored with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-permissions", + "description": "Optional and only valid if Hierarchical Namespace is enabled for the account. Sets POSIX access permissions for the file owner, the file owning group, and others. Each class may be granted read, write, or execute permission. The sticky bit is also supported. Both symbolic (rwxrw-rw-) and 4-digit octal notation (e.g. 0766) are supported.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-umask", + "description": "Optional and only valid if Hierarchical Namespace is enabled for the account. When creating a file or directory and the parent folder does not have a default ACL, the umask restricts the permissions of the file or directory to be created. The resulting permission is given by p & ^u, where p is the permission and u is the umask. For example, if p is 0777 and u is 0057, then the resulting permission is 0720. The default permission is 0777 for a directory and 0666 for a file. The default umask is 0027. The umask must be specified in 4-digit octal notation (e.g. 0766).", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Match", + "description": "Optional. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-source-if-match", + "description": "Optional. An ETag value. Specify this header to perform the rename operation only if the source's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-source-if-none-match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the rename operation only if the source's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-source-if-modified-since", + "description": "Optional. A date and time value. Specify this header to perform the rename operation only if the source has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-source-if-unmodified-since", + "description": "Optional. A date and time value. Specify this header to perform the rename operation only if the source has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "patch": { + "operationId": "Path_Update", + "summary": "Append Data | Flush Data | Set Properties | Set Access Control", + "description": "Uploads data to be appended to a file, flushes (writes) previously uploaded data to a file, sets properties for a file or directory, or sets access control for a file or directory. Data can only be appended to a file. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "consumes": [ + "application/octet-stream", + "text/plain" + ], + "tags": [ + "File and Directory Operations" + ], + "responses": { + "200": { + "description": "The data was flushed (written) to the file or the properties were set successfully.", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "Accept-Ranges": { + "description": "Indicates that the service supports requests for partial file content.", + "type": "string" + }, + "Cache-Control": { + "description": "If the Cache-Control request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Disposition": { + "description": "If the Content-Disposition request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Encoding": { + "description": "If the Content-Encoding request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Language": { + "description": "If the Content-Language request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Length": { + "description": "The size of the resource in bytes.", + "type": "integer", + "format": "int64" + }, + "Content-Range": { + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the file by setting the Range request header.", + "type": "string" + }, + "Content-Type": { + "description": "The content type specified for the resource. If no content type was specified, the default content type is application/octet-stream.", + "type": "string" + }, + "Content-MD5": { + "description": "An MD5 hash of the request content. This header is only returned for \"Flush\" operation. This header is returned so that the client can check for message content integrity. This header refers to the content of the request, not actual file content.", + "type": "string" + }, + "x-ms-properties": { + "description": "User-defined properties associated with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + } + } + }, + "202": { + "description": "The uploaded data was accepted.", + "headers": { + "Content-MD5": { + "description": "An MD5 hash of the request content. This header is only returned for \"Append\" operation. This header is returned so that the client can check for message content integrity. The value of this header is computed by the service; it is not necessarily the same value specified in the request headers.", + "type": "string" + }, + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "action", + "in": "query", + "description": "The action must be \"append\" to upload data to be appended to a file, \"flush\" to flush previously uploaded data to a file, \"setProperties\" to set the properties of a file or directory, or \"setAccessControl\" to set the owner, group, permissions, or access control list for a file or directory. Note that Hierarchical Namespace must be enabled for the account in order to use access control. Also note that the Access Control List (ACL) includes permissions for the owner, owning group, and others, so the x-ms-permissions and x-ms-acl request headers are mutually exclusive.", + "required": true, + "type": "string", + "enum": [ + "append", + "flush", + "setProperties", + "setAccessControl" + ], + "x-ms-enum": { + "name": "PathUpdateAction", + "modelAsString": false + } + }, + { + "name": "position", + "in": "query", + "description": "This parameter allows the caller to upload data in parallel and control the order in which it is appended to the file. It is required when uploading data to be appended to the file and when flushing previously uploaded data to the file. The value must be the position where the data is to be appended. Uploaded data is not immediately flushed, or written, to the file. To flush, the previously uploaded data must be contiguous, the position parameter must be specified and equal to the length of the file after all data has been written, and there must not be a request entity body included with the request.", + "format": "int64", + "required": false, + "type": "integer" + }, + { + "name": "retainUncommittedData", + "in": "query", + "description": "Valid only for flush operations. If \"true\", uncommitted data is retained after the flush operation completes; otherwise, the uncommitted data is deleted after the flush operation. The default is false. Data at offsets less than the specified position are written to the file when flush succeeds, but this optional parameter allows data after the flush position to be retained for a future flush operation.", + "required": false, + "type": "boolean" + }, + { + "name": "close", + "in": "query", + "description": "Azure Storage Events allow applications to receive notifications when files change. When Azure Storage Events are enabled, a file changed event is raised. This event has a property indicating whether this is the final change to distinguish the difference between an intermediate flush to a file stream and the final close of a file stream. The close query parameter is valid only when the action is \"flush\" and change notifications are enabled. If the value of close is \"true\" and the flush operation completes successfully, the service raises a file change notification with a property indicating that this is the final update (the file stream has been closed). If \"false\" a change notification is raised indicating the file has changed. The default is false. This query parameter is set to true by the Hadoop ABFS driver to indicate that the file stream has been closed.\"", + "required": false, + "type": "boolean" + }, + { + "name": "Content-Length", + "in": "header", + "description": "Required for \"Append Data\" and \"Flush Data\". Must be 0 for \"Flush Data\". Must be the length of the request content in bytes for \"Append Data\".", + "minimum": 0, + "required": false, + "type": "integer", + "format": "int64" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the request content. This header is valid on \"Append\" and \"Flush\" operations. This hash is used to verify the integrity of the request content during transport. When this header is specified, the storage service compares the hash of the content that has arrived with this header value. If the two hashes do not match, the operation will fail with error code 400 (Bad Request). Note that this MD5 hash is not stored with the file. This header is associated with the request content, and not with the stored content of the file itself.", + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "The lease ID must be specified if there is an active lease.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "x-ms-cache-control", + "in": "header", + "description": "Optional and only valid for flush and set properties operations. The service stores this value and includes it in the \"Cache-Control\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-type", + "in": "header", + "description": "Optional and only valid for flush and set properties operations. The service stores this value and includes it in the \"Content-Type\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-disposition", + "in": "header", + "description": "Optional and only valid for flush and set properties operations. The service stores this value and includes it in the \"Content-Disposition\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-encoding", + "in": "header", + "description": "Optional and only valid for flush and set properties operations. The service stores this value and includes it in the \"Content-Encoding\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-language", + "in": "header", + "description": "Optional and only valid for flush and set properties operations. The service stores this value and includes it in the \"Content-Language\" response header for \"Read File\" operations.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-content-md5", + "in": "header", + "description": "Optional and only valid for \"Flush & Set Properties\" operations. The service stores this value and includes it in the \"Content-Md5\" response header for \"Read & Get Properties\" operations. If this property is not specified on the request, then the property will be cleared for the file. Subsequent calls to \"Read & Get Properties\" will not return this property unless it is explicitly set on that file again.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-properties", + "description": "Optional. User-defined properties to be stored with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set. Valid only for the setProperties operation. If the file or directory exists, any properties not included in the list will be removed. All properties are removed if the header is omitted. To merge new and existing properties, first get all existing properties and the current E-Tag, then make a conditional request with the E-Tag and include values for all properties.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-owner", + "description": "Optional and valid only for the setAccessControl operation. Sets the owner of the file or directory.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-group", + "description": "Optional and valid only for the setAccessControl operation. Sets the owning group of the file or directory.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-permissions", + "description": "Optional and only valid if Hierarchical Namespace is enabled for the account. Sets POSIX access permissions for the file owner, the file owning group, and others. Each class may be granted read, write, or execute permission. The sticky bit is also supported. Both symbolic (rwxrw-rw-) and 4-digit octal notation (e.g. 0766) are supported. Invalid in conjunction with x-ms-acl.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "x-ms-acl", + "description": "Optional and valid only for the setAccessControl operation. Sets POSIX access control rights on files and directories. The value is a comma-separated list of access control entries that fully replaces the existing access control list (ACL). Each access control entry (ACE) consists of a scope, a type, a user or group identifier, and permissions in the format \"[scope:][type]:[id]:[permissions]\". The scope must be \"default\" to indicate the ACE belongs to the default ACL for a directory; otherwise scope is implicit and the ACE belongs to the access ACL. There are four ACE types: \"user\" grants rights to the owner or a named user, \"group\" grants rights to the owning group or a named group, \"mask\" restricts rights granted to named users and the members of groups, and \"other\" grants rights to all users not found in any of the other entries. The user or group identifier is omitted for entries of type \"mask\" and \"other\". The user or group identifier is also omitted for the owner and owning group. The permission field is a 3-character sequence where the first character is 'r' to grant read access, the second character is 'w' to grant write access, and the third character is 'x' to grant execute permission. If access is not granted, the '-' character is used to denote that the permission is denied. For example, the following ACL grants read, write, and execute rights to the file owner and john.doe@contoso, the read right to the owning group, and nothing to everyone else: \"user::rwx,user:john.doe@contoso:rwx,group::r--,other::---,mask=rwx\". Invalid in conjunction with x-ms-permissions.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Match", + "description": "Optional for Flush Data and Set Properties, but invalid for Append Data. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional for Flush Data and Set Properties, but invalid for Append Data. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional for Flush Data and Set Properties, but invalid for Append Data. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional for Flush Data and Set Properties, but invalid for Append Data. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "requestBody", + "description": "Valid only for append operations. The data to be uploaded and appended to the file.", + "in": "body", + "required": false, + "schema": { + "type": "object", + "format": "file" + } + } + ] + }, + "post": { + "operationId": "Path_Lease", + "summary": "Lease Path", + "description": "Create and manage a lease to restrict write and delete access to the path. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "tags": [ + "File and Directory Operations" + ], + "responses": { + "200": { + "description": "The \"renew\", \"change\" or \"release\" action was successful.", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file was last modified. Write operations on the file update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-lease-id": { + "description": "A successful \"renew\" action returns the lease ID.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + } + } + }, + "201": { + "description": "A new lease has been created. The \"acquire\" action was successful.", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-lease-id": { + "description": "A successful \"acquire\" action returns the lease ID.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + } + } + }, + "202": { + "description": "The \"break\" lease action was successful.", + "headers": { + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-lease-time": { + "description": "The time remaining in the lease period in seconds.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "x-ms-lease-action", + "in": "header", + "description": "There are five lease actions: \"acquire\", \"break\", \"change\", \"renew\", and \"release\". Use \"acquire\" and specify the \"x-ms-proposed-lease-id\" and \"x-ms-lease-duration\" to acquire a new lease. Use \"break\" to break an existing lease. When a lease is broken, the lease break period is allowed to elapse, during which time no lease operation except break and release can be performed on the file. When a lease is successfully broken, the response indicates the interval in seconds until a new lease can be acquired. Use \"change\" and specify the current lease ID in \"x-ms-lease-id\" and the new lease ID in \"x-ms-proposed-lease-id\" to change the lease ID of an active lease. Use \"renew\" and specify the \"x-ms-lease-id\" to renew an existing lease. Use \"release\" and specify the \"x-ms-lease-id\" to release a lease.", + "required": true, + "type": "string", + "enum": [ + "acquire", + "break", + "change", + "renew", + "release" + ], + "x-ms-enum": { + "name": "PathLeaseAction", + "modelAsString": false + } + }, + { + "name": "x-ms-lease-duration", + "in": "header", + "description": "The lease duration is required to acquire a lease, and specifies the duration of the lease in seconds. The lease duration must be between 15 and 60 seconds or -1 for infinite lease.", + "format": "int32", + "required": false, + "type": "integer" + }, + { + "name": "x-ms-lease-break-period", + "in": "header", + "description": "The lease break period duration is optional to break a lease, and specifies the break period of the lease in seconds. The lease break duration must be between 0 and 60 seconds.", + "format": "int32", + "required": false, + "type": "integer" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required when \"x-ms-lease-action\" is \"renew\", \"change\" or \"release\". For the renew and release actions, this must match the current lease ID.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "x-ms-proposed-lease-id", + "in": "header", + "description": "Required when \"x-ms-lease-action\" is \"acquire\" or \"change\". A lease will be acquired with this lease ID if the operation is successful.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "If-Match", + "description": "Optional. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "get": { + "operationId": "Path_Read", + "summary": "Read File", + "description": "Read the contents of a file. For read operations, range requests are supported. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "produces": [ + "application/json", + "application/octet-stream", + "text/plain" + ], + "tags": [ + "File and Directory Operations" + ], + "responses": { + "200": { + "description": "Ok", + "headers": { + "Accept-Ranges": { + "description": "Indicates that the service supports requests for partial file content.", + "type": "string" + }, + "Cache-Control": { + "description": "If the Cache-Control request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Disposition": { + "description": "If the Content-Disposition request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Encoding": { + "description": "If the Content-Encoding request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Language": { + "description": "If the Content-Language request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Length": { + "description": "The size of the resource in bytes.", + "type": "integer", + "format": "int64" + }, + "Content-Range": { + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the file by setting the Range request header.", + "type": "string" + }, + "Content-Type": { + "description": "The content type specified for the resource. If no content type was specified, the default content type is application/octet-stream.", + "type": "string" + }, + "Content-MD5": { + "description": "The MD5 hash of complete file. If the file has an MD5 hash and this read operation is to read the complete file, this response header is returned so that the client can check for message content integrity.", + "type": "string" + }, + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-resource-type": { + "description": "The type of the resource. The value may be \"file\" or \"directory\". If not set, the value is \"file\".", + "type": "string" + }, + "x-ms-properties": { + "description": "The user-defined properties associated with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "type": "string" + }, + "x-ms-lease-duration": { + "description": "When a resource is leased, specifies whether the lease is of infinite or fixed duration.", + "type": "string" + }, + "x-ms-lease-state": { + "description": "Lease state of the resource. ", + "type": "string" + }, + "x-ms-lease-status": { + "description": "The lease status of the resource.", + "type": "string" + } + }, + "schema": { + "type": "file" + } + }, + "206": { + "description": "Partial content", + "headers": { + "Accept-Ranges": { + "description": "Indicates that the service supports requests for partial file content.", + "type": "string" + }, + "Cache-Control": { + "description": "If the Cache-Control request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Disposition": { + "description": "If the Content-Disposition request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Encoding": { + "description": "If the Content-Encoding request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Language": { + "description": "If the Content-Language request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Length": { + "description": "The size of the resource in bytes.", + "type": "integer", + "format": "int64" + }, + "Content-Range": { + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the file by setting the Range request header.", + "type": "string" + }, + "Content-Type": { + "description": "The content type specified for the resource. If no content type was specified, the default content type is application/octet-stream.", + "type": "string" + }, + "Content-MD5": { + "description": "The MD5 hash of read range. If the request is to read a specified range and the \"x-ms-range-get-content-md5\" is set to true, then the request returns an MD5 hash for the range, as long as the range size is less than or equal to 4 MB.", + "type": "string" + }, + "x-ms-content-md5": { + "description": "The MD5 hash of complete file stored in storage. If the file has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the complete file's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range.", + "type": "string" + }, + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-resource-type": { + "description": "The type of the resource. The value may be \"file\" or \"directory\". If not set, the value is \"file\".", + "type": "string" + }, + "x-ms-properties": { + "description": "The user-defined properties associated with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "type": "string" + }, + "x-ms-lease-duration": { + "description": "When a resource is leased, specifies whether the lease is of infinite or fixed duration.", + "type": "string" + }, + "x-ms-lease-state": { + "description": "Lease state of the resource. ", + "type": "string" + }, + "x-ms-lease-status": { + "description": "The lease status of the resource.", + "type": "string" + } + }, + "schema": { + "type": "file" + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "in": "header", + "description": "The HTTP Range request header specifies one or more byte ranges of the resource to be retrieved.", + "required": false, + "type": "string", + "name": "Range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Optional. If this header is specified, the operation will be performed only if both of the following conditions are met: i) the path's lease is currently active and ii) the lease ID specified in the request matches that of the path.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "x-ms-range-get-content-md5", + "in": "header", + "description": "Optional. When this header is set to \"true\" and specified together with the Range header, the service returns the MD5 hash for the range, as long as the range is less than or equal to 4MB in size. If this header is specified without the Range header, the service returns status code 400 (Bad Request). If this header is set to true when the range exceeds 4 MB in size, the service returns status code 400 (Bad Request).", + "required": false, + "type": "boolean" + }, + { + "name": "If-Match", + "description": "Optional. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "head": { + "operationId": "Path_GetProperties", + "summary": "Get Properties | Get Status | Get Access Control List | Check Access", + "description": "Get Properties returns all system and user defined properties for a path. Get Status returns all system defined properties for a path. Get Access Control List returns the access control list for a path. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "tags": [ + "File and Directory Operations" + ], + "responses": { + "200": { + "description": "Returns all properties for the file or directory.", + "headers": { + "Accept-Ranges": { + "description": "Indicates that the service supports requests for partial file content.", + "type": "string" + }, + "Cache-Control": { + "description": "If the Cache-Control request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Disposition": { + "description": "If the Content-Disposition request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Encoding": { + "description": "If the Content-Encoding request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Language": { + "description": "If the Content-Language request header has previously been set for the resource, that value is returned in this header.", + "type": "string" + }, + "Content-Length": { + "description": "The size of the resource in bytes.", + "type": "integer", + "format": "int64" + }, + "Content-Range": { + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the file by setting the Range request header.", + "type": "string" + }, + "Content-Type": { + "description": "The content type specified for the resource. If no content type was specified, the default content type is application/octet-stream.", + "type": "string" + }, + "Content-MD5": { + "description": "The MD5 hash of complete file stored in storage. This header is returned only for \"GetProperties\" operation. If the Content-MD5 header has been set for the file, this response header is returned for GetProperties call so that the client can check for message content integrity.", + "type": "string" + }, + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "ETag": { + "description": "An HTTP entity tag associated with the file or directory.", + "type": "string" + }, + "Last-Modified": { + "description": "The data and time the file or directory was last modified. Write operations on the file or directory update the last modified time.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-resource-type": { + "description": "The type of the resource. The value may be \"file\" or \"directory\". If not set, the value is \"file\".", + "type": "string" + }, + "x-ms-properties": { + "description": "The user-defined properties associated with the file or directory, in the format of a comma-separated list of name and value pairs \"n1=v1, n2=v2, ...\", where each value is a base64 encoded string. Note that the string may only contain ASCII characters in the ISO-8859-1 character set.", + "type": "string" + }, + "x-ms-owner": { + "description": "The owner of the file or directory. Included in the response if Hierarchical Namespace is enabled for the account.", + "type": "string" + }, + "x-ms-group": { + "description": "The owning group of the file or directory. Included in the response if Hierarchical Namespace is enabled for the account.", + "type": "string" + }, + "x-ms-permissions": { + "description": "The POSIX access permissions for the file owner, the file owning group, and others. Included in the response if Hierarchical Namespace is enabled for the account.", + "type": "string" + }, + "x-ms-acl": { + "description": "The POSIX access control list for the file or directory. Included in the response only if the action is \"getAccessControl\" and Hierarchical Namespace is enabled for the account.", + "type": "string" + }, + "x-ms-lease-duration": { + "description": "When a resource is leased, specifies whether the lease is of infinite or fixed duration.", + "type": "string" + }, + "x-ms-lease-state": { + "description": "Lease state of the resource. ", + "type": "string" + }, + "x-ms-lease-status": { + "description": "The lease status of the resource.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "action", + "in": "query", + "description": "Optional. If the value is \"getStatus\" only the system defined properties for the path are returned. If the value is \"getAccessControl\" the access control list is returned in the response headers (Hierarchical Namespace must be enabled for the account), otherwise the properties are returned.", + "required": false, + "type": "string", + "enum": [ + "getAccessControl", + "getStatus", + "checkAccess" + ], + "x-ms-enum": { + "name": "PathGetPropertiesAction", + "modelAsString": false + } + }, + { + "name": "upn", + "in": "query", + "description": "Optional. Valid only when Hierarchical Namespace is enabled for the account. If \"true\", the user identity values returned in the x-ms-owner, x-ms-group, and x-ms-acl response headers will be transformed from Azure Active Directory Object IDs to User Principal Names. If \"false\", the values will be returned as Azure Active Directory Object IDs. The default value is false. Note that group and application Object IDs are not translated because they do not have unique friendly names.", + "required": false, + "type": "boolean" + }, + { + "name": "fsAction", + "in": "query", + "description": "Required only for check access action. Valid only when Hierarchical Namespace is enabled for the account. File system operation read/write/execute in string form, matching regex pattern '[rwx-]{3}'", + "required": false, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Optional. If this header is specified, the operation will be performed only if both of the following conditions are met: i) the path's lease is currently active and ii) the lease ID specified in the request matches that of the path.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "If-Match", + "description": "Optional. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "delete": { + "operationId": "Path_Delete", + "summary": "Delete File | Delete Directory", + "description": "Delete the file or directory. This operation supports conditional HTTP requests. For more information, see [Specifying Conditional Headers for Blob Service Operations](https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations).", + "tags": [ + "File and Directory Operations" + ], + "responses": { + "200": { + "description": "The file was deleted.", + "headers": { + "Date": { + "description": "A UTC date/time value generated by the service that indicates the time at which the response was initiated.", + "type": "string" + }, + "x-ms-request-id": { + "description": "A server-generated UUID recorded in the analytics logs for troubleshooting and correlation.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "type": "string" + }, + "x-ms-version": { + "description": "The version of the REST protocol used to process the request.", + "type": "string" + }, + "x-ms-continuation": { + "description": "When deleting a directory, the number of paths that are deleted with each invocation is limited. If the number of paths to be deleted exceeds this limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the delete operation to continue deleting the directory.", + "type": "string" + } + } + }, + "default": { + "$ref": "#/responses/ErrorResponse" + } + }, + "parameters": [ + { + "name": "recursive", + "in": "query", + "description": "Required and valid only when the resource is a directory. If \"true\", all paths beneath the directory will be deleted. If \"false\" and the directory is non-empty, an error occurs.", + "required": false, + "type": "boolean" + }, + { + "name": "continuation", + "in": "query", + "description": "Optional. When deleting a directory, the number of paths that are deleted with each invocation is limited. If the number of paths to be deleted exceeds this limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the delete operation to continue deleting the directory.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "The lease ID must be specified if there is an active lease.", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string" + }, + { + "name": "If-Match", + "description": "Optional. An ETag value. Specify this header to perform the operation only if the resource's ETag matches the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-None-Match", + "description": "Optional. An ETag value or the special wildcard (\"*\") value. Specify this header to perform the operation only if the resource's ETag does not match the value specified. The ETag must be specified in quotes.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Modified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + }, + { + "name": "If-Unmodified-Since", + "description": "Optional. A date and time value. Specify this header to perform the operation only if the resource has not been modified since the specified date and time.", + "in": "header", + "required": false, + "type": "string" + } + ] + }, + "parameters": [ + { + "name": "filesystem", + "in": "path", + "description": "The filesystem identifier.", + "pattern": "^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$", + "minLength": 3, + "maxLength": 63, + "required": true, + "type": "string" + }, + { + "name": "path", + "in": "path", + "description": "The file or directory path.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-client-request-id", + "description": "A UUID recorded in the analytics logs for troubleshooting and correlation.", + "in": "header", + "pattern": "^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$", + "required": false, + "type": "string", + "x-ms-client-request-id": true + }, + { + "name": "timeout", + "in": "query", + "description": "An optional operation timeout value in seconds. The period begins when the request is received by the service. If the timeout value elapses before the operation completes, the operation fails.", + "format": "int32", + "minimum": 1, + "required": false, + "type": "integer" + }, + { + "name": "x-ms-date", + "in": "header", + "description": "Specifies the Coordinated Universal Time (UTC) for the request. This is required when using shared key authorization.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/Version" + } + ] + } + } +} diff --git a/specification/storage/data-plane/readme.go.md b/specification/storage/data-plane/readme.go.md index 7c5751255cb4..6a981e124531 100644 --- a/specification/storage/data-plane/readme.go.md +++ b/specification/storage/data-plane/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-10 - tag: package-2018-11 - tag: package-2018-06-preview ``` +### Tag: package-2019-10 and go + +These settings apply only when `--tag=package-2019-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(go) +output-folder: $(go-sdk-folder)/services/storage/datalake/2019-10-31/$(namespace) +``` + ### Tag: package-2018-11 and go These settings apply only when `--tag=package-2018-11 --go` is specified on the command line. diff --git a/specification/storage/data-plane/readme.md b/specification/storage/data-plane/readme.md index d3ec35c080b4..32b45d9ccbdf 100644 --- a/specification/storage/data-plane/readme.md +++ b/specification/storage/data-plane/readme.md @@ -26,11 +26,20 @@ These are the global settings for the DataLakeStorage API. ``` yaml openapi-type: data-plane -tag: package-2018-11 +tag: package-2019-10 use-internal-constructors: true add-credentials: true ``` +### 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: +- Microsoft.StorageDataLake/stable/2019-10-31/DataLakeStorage.json +``` + ### Tag: package-2018-11 These settings apply only when `--tag=package-2018-11` is specified on the command line. @@ -95,10 +104,21 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2019-10 - tag: package-2018-11 - tag: package-2018-06-preview ``` +### Tag: package-2019-10 and python + +These settings apply only when `--tag=package-2019-10 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10' && $(python) +python: + namespace: azure.datalake.storage.v2019_10_31 + output-folder: $(python-sdks-folder)/azure-datalake-storage/azure/datalake/storage/v2019_10_31 +``` + ### Tag: package-2018-11 and python These settings apply only when `--tag=package-2018-11 --python` is specified on the command line. @@ -148,6 +168,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.StorageDataLake/stable/2019-10-31/DataLakeStorage.json - $(this-folder)/Microsoft.StorageDataLake/stable/2018-11-09/DataLakeStorage.json - $(this-folder)/Microsoft.StorageDataLake/preview/2018-06-17/DataLakeStorage.json diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json index 3be1fbfd7991..f1fbcd41b6b0 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/file.json @@ -52,7 +52,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -106,7 +106,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -149,7 +149,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -209,7 +209,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } }, @@ -272,7 +272,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -325,7 +325,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -368,7 +368,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -411,7 +411,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "#/definitions/CloudError" } } } @@ -525,16 +525,16 @@ }, "description": "The properties of the file share." }, - "ErrorResponse": { + "CloudError": { "x-ms-external": true, "properties": { "error": { - "$ref": "#/definitions/ErrorResponseBody" + "$ref": "#/definitions/CloudErrorBody" } }, "description": "An error response from the Storage service." }, - "ErrorResponseBody": { + "CloudErrorBody": { "x-ms-external": true, "properties": { "code": { @@ -552,7 +552,7 @@ "details": { "type": "array", "items": { - "$ref": "#/definitions/ErrorResponseBody" + "$ref": "#/definitions/CloudErrorBody" }, "description": "A list of additional details about the error." }