diff --git a/custom-words.txt b/custom-words.txt index 6b808790e982..802ba455e93d 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -656,6 +656,7 @@ getcertificate getconsumergroup GETCONTENTSUMMARY GETFILESTATUS +getikesas getissuers getitems getjob @@ -1769,7 +1770,6 @@ Unregistering Unregisters unrestorable unsubstituted -Unsynced untagged Untracked unvalidated diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringCreate.json index 39df51f05681..51507e38cf87 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringCreate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringCreate.json @@ -11,7 +11,6 @@ "allowForwardedTraffic": true, "allowGatewayTransit": false, "useRemoteGateways": false, - "syncRemoteAddressSpace": true, "remoteVirtualNetwork": { "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" } @@ -36,18 +35,12 @@ "12.0.0.0/8" ] }, - "remoteVirtualNetworkAddressSpace": { - "addressPrefixes": [ - "12.0.0.0/8" - ] - }, "remoteBgpCommunities": { "virtualNetworkCommunity": "12076:20002", "regionalCommunity": "12076:50004" }, "peeringState": "Initiated", - "provisioningState": "Succeeded", - "peeringSyncLevel": "FullySynced" + "provisioningState": "Succeeded" } } }, @@ -68,18 +61,12 @@ "12.0.0.0/8" ] }, - "remoteVirtualNetworkAddressSpace": { - "addressPrefixes": [ - "12.0.0.0/8" - ] - }, "remoteBgpCommunities": { "virtualNetworkCommunity": "12076:20002", "regionalCommunity": "12076:50004" }, "peeringState": "Initiated", - "provisioningState": "Succeeded", - "peeringSyncLevel": "FullySynced" + "provisioningState": "Succeeded" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringGet.json index 6998d9a99703..32569e79424e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringGet.json @@ -24,18 +24,12 @@ "12.0.0.0/8" ] }, - "remoteVirtualNetworkAddressSpace": { - "addressPrefixes": [ - "12.0.0.0/8" - ] - }, "remoteBgpCommunities": { "virtualNetworkCommunity": "12076:20002", "regionalCommunity": "12076:50004" }, "peeringState": "Initiated", - "provisioningState": "Succeeded", - "peeringSyncLevel": "FullySynced" + "provisioningState": "Succeeded" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringList.json index 257400138675..af8a21220f94 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringList.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/examples/VirtualNetworkPeeringList.json @@ -25,18 +25,12 @@ "12.0.0.0/8" ] }, - "remoteVirtualNetworkAddressSpace": { - "addressPrefixes": [ - "12.0.0.0/8" - ] - }, "remoteBgpCommunities": { "virtualNetworkCommunity": "12076:20002", "regionalCommunity": "12076:50004" }, "peeringState": "Initiated", - "provisioningState": "Succeeded", - "peeringSyncLevel": "FullySynced" + "provisioningState": "Succeeded" } }, { @@ -55,18 +49,12 @@ "13.0.0.0/8" ] }, - "remoteVirtualNetworkAddressSpace": { - "addressPrefixes": [ - "13.0.0.0/8" - ] - }, "remoteBgpCommunities": { "virtualNetworkCommunity": "12076:20003", "regionalCommunity": "12076:50004" }, "peeringState": "Initiated", - "provisioningState": "Succeeded", - "peeringSyncLevel": "FullySynced" + "provisioningState": "Succeeded" } } ] diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetwork.json index 91ca76e75d9b..1be938b579ad 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetwork.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-07-01/virtualNetwork.json @@ -1550,11 +1550,7 @@ }, "remoteAddressSpace": { "$ref": "#/definitions/AddressSpace", - "description": "The reference to the address space peered with the remote virtual network." - }, - "remoteVirtualNetworkAddressSpace": { - "$ref": "#/definitions/AddressSpace", - "description": "The reference to the current address space of the remote virtual network." + "description": "The reference to the remote virtual network address space." }, "remoteBgpCommunities": { "$ref": "#/definitions/VirtualNetworkBgpCommunities", @@ -1574,25 +1570,6 @@ "modelAsString": true } }, - "peeringSyncLevel": { - "type": "string", - "description": "The peering sync status of the virtual network peering.", - "enum": [ - "FullySynced", - "RemoteUnsynced", - "LocalUnsynced", - "LocalAndRemoteUnsynced" - ], - "x-ms-enum": { - "name": "VirtualNetworkPeeringLevel", - "modelAsString": true - } - }, - "syncRemoteAddressSpace": { - "type": "boolean", - "default": false, - "description": "Provided when user wants to sync the peering with address space on the remote virtual network after the address space is updated." - }, "provisioningState": { "readOnly": true, "$ref": "./network.json#/definitions/ProvisioningState", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json new file mode 100644 index 000000000000..ade299d0aea4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationGateway.json @@ -0,0 +1,3526 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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}/privateLinkResources": { + "get": { + "tags": [ + "ApplicationGatewayPrivateLinkResources" + ], + "operationId": "ApplicationGatewayPrivateLinkResources_List", + "x-ms-examples": { + "Lists all private link resources on application gateway": { + "$ref": "./examples/ApplicationGatewayPrivateLinkResourceList.json" + } + }, + "description": "Lists all private link resources on an 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": "Success. The operation returns a list of private link resources on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/privateEndpointConnections/{connectionName}": { + "delete": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Delete", + "x-ms-examples": { + "Delete Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionDelete.json" + } + }, + "description": "Deletes the specified private endpoint connection on 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": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "$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/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "put": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Update", + "description": "Updates the specified private endpoint connection on 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": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "Parameters supplied to update application gateway private endpoint connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint connection on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection on application gateway.", + "x-ms-examples": { + "Get Application Gateway Private Endpoint Connection": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionGet.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." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway private endpoint connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an application gateway private endpoint connection.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/privateEndpointConnections": { + "get": { + "tags": [ + "ApplicationGatewayPrivateEndpointConnections" + ], + "operationId": "ApplicationGatewayPrivateEndpointConnections_List", + "x-ms-examples": { + "Lists all private endpoint connections on application gateway": { + "$ref": "./examples/ApplicationGatewayPrivateEndpointConnectionList.json" + } + }, + "description": "Lists all private endpoint connections on an 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": "Success. The operation returns a list of private endpoint connections on application gateway.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "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 to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to 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 to 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 to 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 to 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 to 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." + }, + "ApplicationGatewayClientAuthConfiguration": { + "properties": { + "verifyClientCertIssuerDN": { + "type": "boolean", + "description": "Verify client certificate issuer name on the application gateway." + } + }, + "description": "Application gateway client authentication configuration." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewayTrustedClientCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted client certificate resource." + } + }, + "description": "Trusted client certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedClientCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedClientCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted client certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted client certificate 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." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted client 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": { + "readOnly": true, + "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": { + "readOnly": true, + "$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": { + "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": "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 to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "privateLinkConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the application gateway private link configuration." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "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": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewaySslProfilePropertiesFormat": { + "properties": { + "trustedClientCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted client certificates." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "clientAuthConfiguration": { + "$ref": "#/definitions/ApplicationGatewayClientAuthConfiguration", + "description": "Client authentication configuration of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + } + }, + "description": "Properties of SSL profile of an application gateway." + }, + "ApplicationGatewaySslProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslProfilePropertiesFormat", + "description": "Properties of the application gateway SSL profile." + }, + "name": { + "type": "string", + "description": "Name of the SSL profile 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." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL profile 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." + }, + "sslProfile": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL profile resource of the application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "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": { + "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": "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy 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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action 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." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url 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": { + "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": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPrivateLinkConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkConfigurationProperties", + "description": "Properties of the application gateway private link configuration." + }, + "name": { + "type": "string", + "description": "Name of the private link configuration 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." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private Link Configuration on an application gateway." + }, + "ApplicationGatewayPrivateLinkConfigurationProperties": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkIpConfiguration" + }, + "description": "An array of application gateway private link ip configurations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private link configuration." + } + }, + "description": "Properties of private link configuration on an application gateway." + }, + "ApplicationGatewayPrivateLinkIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkIpConfigurationProperties", + "description": "Properties of an application gateway private link ip configuration." + }, + "name": { + "type": "string", + "description": "The name of application gateway private link 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 application gateway private link ip configuration." + }, + "ApplicationGatewayPrivateLinkIpConfigurationProperties": { + "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": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private link IP configuration." + } + }, + "description": "Properties of an application gateway private link IP configuration." + }, + "ApplicationGatewayPrivateLinkResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResourceProperties", + "description": "Properties of the application gateway private link resource." + }, + "name": { + "type": "string", + "description": "Name of the private link resource 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." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLink Resource of an application gateway." + }, + "ApplicationGatewayPrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + }, + "ApplicationGatewayPrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkResource" + }, + "description": "List of private link resources of an application gateway." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGatewayPrivateLinkResources API service call. Gets all private link resources for an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnectionProperties", + "description": "Properties of the application gateway private endpoint connection." + }, + "name": { + "type": "string", + "description": "Name of the private endpoint connection on an application gateway." + }, + "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": "Private Endpoint connection on an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of Private Link Resource of an application gateway." + }, + "ApplicationGatewayPrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "List of private endpoint connections on an application gateway." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGatewayPrivateEndpointConnection API service call. Gets all private endpoint connections for 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)." + }, + "trustedClientCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedClientCertificate" + }, + "description": "Trusted client 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)." + }, + "sslProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslProfile" + }, + "description": "SSL profiles 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 to 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." + }, + "privateLinkConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateLinkConfiguration" + }, + "description": "PrivateLink configurations on application gateway." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPrivateEndpointConnection" + }, + "description": "Private Endpoint connections on application gateway." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "forceFirewallPolicyAssociation": { + "type": "boolean", + "description": "If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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/2020-08-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..651c32f319d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/availableDelegations.json new file mode 100644 index 000000000000..8aa37ced5db5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": "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/2020-08-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/availableServiceAliases.json new file mode 100644 index 000000000000..287afb59c7fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "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": "2020-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}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewall.json new file mode 100644 index 000000000000..cb83f75a5452 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewall.json @@ -0,0 +1,1085 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.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", + "minLength": 1, + "maxLength": 56, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.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 of 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": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall 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 AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.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/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "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." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubPublicIPAddresses": { + "properties": { + "addresses": { + "type": "array", + "description": "The list of Public IP addresses associated with azure firewall or IP addresses to be retained.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "count": { + "type": "integer", + "format": "int32", + "description": "The number of Public IP addresses associated with azure firewall." + } + }, + "description": "Public IP addresses associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPs": { + "description": "Public IP addresses associated with azure firewall.", + "$ref": "#/definitions/HubPublicIPAddresses" + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "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." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "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 + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "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": { + "readOnly": true, + "$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" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups 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": { + "readOnly": true, + "$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." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "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": { + "readOnly": true, + "$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" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "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 + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..81ed74b6301e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/azureWebCategory.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureWebCategory.json new file mode 100644 index 000000000000..0246a4712493 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/azureWebCategory.json @@ -0,0 +1,184 @@ +{ + "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": "2020-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}/providers/Microsoft.Network/azureWebCategories/{name}": { + "get": { + "tags": [ + "WebCategories" + ], + "operationId": "WebCategories_Get", + "description": "Gets the specified Azure Web Category.", + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the azureWebCategory." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds back referenced by the azureWebCategory resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting azureWebCategory resource.", + "schema": { + "$ref": "#/definitions/AzureWebCategory" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Web Category by name": { + "$ref": "./examples/AzureWebCategoryGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureWebCategories": { + "get": { + "tags": [ + "WebCategories" + ], + "operationId": "WebCategories_ListBySubscription", + "description": "Gets all the Azure Web Categories 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 Web Category resources.", + "schema": { + "$ref": "#/definitions/AzureWebCategoryListResult" + } + }, + "default": { + "description": "Unexpected Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Web Categories for a given subscription": { + "$ref": "./examples/AzureWebCategoriesListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureWebCategoryPropertiesFormat": { + "properties": { + "group": { + "type": "string", + "readOnly": true, + "description": "The name of the group that the category belongs to." + } + }, + "description": "Azure Web Category Properties." + }, + "AzureWebCategory": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureWebCategoryPropertiesFormat", + "description": "Properties of the Azure Web Category." + }, + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Azure Web Category Resource." + }, + "AzureWebCategoryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureWebCategory" + }, + "description": "List of Azure Web Categories for a given Subscription." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureWebCategories API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/bastionHost.json new file mode 100644 index 000000000000..af7aac319238 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "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": "2020-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.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$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/CloudError" + } + } + }, + "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": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$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." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json new file mode 100644 index 000000000000..aed8ff572b97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/cloudServiceNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/cloudServiceNetworkInterface.json new file mode 100644 index 000000000000..ff4aad776a16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/cloudServiceNetworkInterface.json @@ -0,0 +1,222 @@ +{ + "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": "2020-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.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListCloudServiceRoleInstanceNetworkInterfaces", + "description": "Gets information about all network interfaces in a role instance in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List cloud service role instance network interfaces": { + "$ref": "./examples/CloudServiceRoleInstanceNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListCloudServiceNetworkInterfaces", + "description": "Gets all network interfaces in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List cloud service network interfaces": { + "$ref": "./examples/CloudServiceNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetCloudServiceNetworkInterface", + "description": "Get the specified network interface in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get cloud service network interface": { + "$ref": "./examples/CloudServiceNetworkInterfaceGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json new file mode 100644 index 000000000000..31af7ddb9570 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "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": "2020-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.Compute/cloudServices/{cloudServiceName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListCloudServicePublicIPAddresses", + "description": "Gets information about all public IP addresses on a cloud service level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/CloudServicePublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListCloudServiceRoleInstancePublicIPAddresses", + "description": "Gets information about all public IP addresses in a role instance IP configuration in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of role instance." + }, + { + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/CloudServiceRoleInstancePublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetCloudServicePublicIPAddress", + "description": "Get the specified public IP address in a cloud service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "cloudServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cloud service." + }, + { + "name": "roleInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "The role instance name." + }, + { + "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/CloudServicePublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/customIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/customIpPrefix.json new file mode 100644 index 000000000000..a1b3cf07cbba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/customIpPrefix.json @@ -0,0 +1,451 @@ +{ + "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": "2020-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.Network/customIpPrefixes/{customIpPrefixName}": { + "delete": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_Delete", + "description": "Deletes the specified custom IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the CustomIpPrefix." + }, + { + "$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": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete custom IP prefix": { + "$ref": "./examples/CustomIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_Get", + "description": "Gets the specified custom IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom 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 CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get custom IP prefix": { + "$ref": "./examples/CustomIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a custom IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + }, + "description": "Parameters supplied to the create or update custom IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting CustomIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create custom IP prefix allocation method": { + "$ref": "./examples/CustomIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_UpdateTags", + "description": "Updates custom IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "customIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the custom IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update custom IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting customIpPrefix resource.", + "schema": { + "$ref": "#/definitions/CustomIpPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/CustomIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/customIpPrefixes": { + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_ListAll", + "description": "Gets all the custom 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 CustomIpPrefix resources.", + "schema": { + "$ref": "#/definitions/CustomIpPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all custom IP prefixes": { + "$ref": "./examples/CustomIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/customIpPrefixes": { + "get": { + "tags": [ + "CustomIpPrefixes" + ], + "operationId": "CustomIPPrefixes_List", + "description": "Gets all custom 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 CustomIpPrefix resources.", + "schema": { + "$ref": "#/definitions/CustomIpPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group Custom IP prefixes": { + "$ref": "./examples/CustomIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CustomIpPrefixPropertiesFormat": { + "properties": { + "cidr": { + "type": "string", + "description": "The prefix range in CIDR notation. Should include the start address and the prefix length." + }, + "commissionedState": { + "type": "string", + "description": "The commissioned state of the Custom IP Prefix.", + "enum": [ + "Provisioning", + "Provisioned", + "Commissioning", + "Commissioned", + "Decommissioning", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "CommissionedState", + "modelAsString": true + } + }, + "publicIpPrefixes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of all referenced PublicIpPrefixes." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the custom IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the custom IP prefix resource." + } + }, + "description": "Custom IP prefix properties." + }, + "CustomIpPrefix": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the custom IP prefix." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomIpPrefixPropertiesFormat", + "description": "Custom IP prefix properties." + }, + "etag": { + "readOnly": true, + "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": "Custom IP prefix resource." + }, + "CustomIpPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomIpPrefix" + }, + "description": "A list of Custom IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListCustomIpPrefixes API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..154385c16837 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "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": "2020-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.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": "./network.json#/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": "./network.json#/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": "./network.json#/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 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": "./network.json#/definitions/CloudError" + } + } + }, + "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." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..ea29aac9b94b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/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 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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/dscpConfiguration.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/dscpConfiguration.json new file mode 100644 index 000000000000..b8022721464d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/dscpConfiguration.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": "2020-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.Network/dscpConfigurations/{dscpConfigurationName}": { + "put": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_CreateOrUpdate", + "description": "Creates or updates a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DscpConfiguration" + }, + "description": "Parameters supplied to the create or update dscp configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DscpConfiguration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DscpConfiguration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create DSCP Configuration": { + "$ref": "./examples/DscpConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_Delete", + "description": "Deletes a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "$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": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete DSCP Configuration": { + "$ref": "./examples/DscpConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "DscpConfiguration" + ], + "operationId": "DscpConfiguration_Get", + "description": "Gets a DSCP Configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "dscpConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting DSCP Configuration resource.", + "schema": { + "$ref": "#/definitions/DscpConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Dscp Configuration": { + "$ref": "./examples/DscpConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfigurations": { + "get": { + "tags": [ + "DscpConfigurations" + ], + "operationId": "DscpConfiguration_List", + "description": "Gets a DSCP Configuration.", + "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 DSCP Configuration resource.", + "schema": { + "$ref": "#/definitions/DscpConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Dscp Configuration": { + "$ref": "./examples/DscpConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/dscpConfigurations": { + "get": { + "tags": [ + "DscpConfigurations" + ], + "operationId": "DscpConfiguration_ListAll", + "description": "Gets all dscp configurations 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/DscpConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/DscpConfigurationListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DscpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DscpConfigurationPropertiesFormat", + "description": "Properties of the network interface." + }, + "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": "DSCP Configuration in a resource group." + }, + "DscpConfigurationPropertiesFormat": { + "properties": { + "markings": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "List of markings to be used in the configuration." + }, + "sourceIpRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosIpRange" + }, + "description": "Source IP ranges." + }, + "destinationIpRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosIpRange" + }, + "description": "Destination IP ranges." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosPortRange" + }, + "description": "Sources port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/QosPortRange" + }, + "description": "Destination port ranges." + }, + "protocol": { + "type": "string", + "enum": [ + "DoNotUse", + "Icmp", + "Tcp", + "Udp", + "Gre", + "Esp", + "Ah", + "Vxlan", + "All" + ], + "x-ms-enum": { + "name": "ProtocolType", + "modelAsString": true + }, + "description": "RNM supported protocol types." + }, + "qosCollectionId": { + "type": "string", + "readOnly": true, + "description": "Qos Collection ID generated by RNM." + }, + "associatedNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "readOnly": true, + "description": "Associated Network Interfaces to the DSCP Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DSCP Configuration resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DSCP Configuration resource." + } + }, + "description": "DSCP Configuration properties." + }, + "QosIpRange": { + "properties": { + "startIP": { + "type": "string", + "description": "Start IP Address." + }, + "endIP": { + "type": "string", + "description": "End IP Address." + } + }, + "description": "Qos Traffic Profiler IP Range properties." + }, + "QosPortRange": { + "properties": { + "start": { + "type": "integer", + "format": "int32", + "description": "Qos Port Range start." + }, + "end": { + "type": "integer", + "format": "int32", + "description": "Qos Port Range end." + } + }, + "description": "Qos Traffic Profiler Port range properties." + }, + "DscpConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DscpConfiguration" + }, + "description": "A list of dscp configurations in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the DscpConfigurationList API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/endpointService.json new file mode 100644 index 000000000000..ee019599cd04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..d55332fd4558 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..0aa7f9a15073 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..2812afd2a03d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..3c73553645a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..25f7a4d1286b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..4c7e4e92add2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..b0f08d91d3bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..1d00e72a2e8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..d5610dbc2db9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..4e5bc738f287 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,878 @@ +{ + "parameters": { + "api-version": "2020-08-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" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "properties": { + "data": "****" + } + } + ], + "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 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "properties": { + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "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" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "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" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "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": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****" + } + } + ], + "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 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "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" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "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" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "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": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****" + } + } + ], + "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" + }, + "privateLinkConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1" + } + } + } + ], + "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 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "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" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "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" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [], + "privateLinkConfigurations": [ + { + "name": "privateLinkConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "natNicIpconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLinkConfig1/ipConfigurations/natNicIpconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "primary": true, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..b37c0a51b440 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..bbda50ca18c4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,331 @@ +{ + "parameters": { + "api-version": "2020-08-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": "*****" + } + } + ], + "trustedClientCertificates": [ + { + "name": "clientcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert", + "properties": { + "provisioningState": "Succeeded", + "data": "****" + } + } + ], + "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 + } + } + ], + "sslProfiles": [ + { + "name": "sslProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1", + "properties": { + "provisioningState": "Succeeded", + "sslPolicy": { + "policyType": "Custom", + "minProtocolVersion": "TLSv1_1", + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + ] + }, + "clientAuthConfiguration": { + "verifyClientCertIssuerDN": true + }, + "trustedClientCertificates": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/trustedClientCertificates/clientcert" + } + ] + } + } + ], + "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" + }, + "sslProfile": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslProfiles/sslProfile1" + }, + "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" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [], + "privateLinkConfigurations": [ + { + "name": "privateLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "natNicIpconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1/privateLinkConfigurations/privateLink1/ipConfigurations/natNicIpconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "primary": true, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + }, + { + "name": "natNicIpconfig2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkConfigurations/privateLink1/privateLinkConfigurations/privateLink1/ipConfigurations/natNicIpconfig2", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ] + } + } + ], + "privateEndpointConnections": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..7340ff7928de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-08-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": "" + } + } + ], + "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/2020-08-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..2110cb55e751 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2020-08-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": "" + } + } + ], + "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/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..7c95bfb95fac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..ff162b9586b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1" + }, + "responses": { + "200": { + "body": { + "name": "coonection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/connection1", + "type": "Microsoft.Network/applicationGateways/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approval Done" + }, + "linkIdentifier": "805319460" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json new file mode 100644 index 000000000000..57eeb4804260 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "coonection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/connection1", + "type": "Microsoft.Network/applicationGateways/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approval Done" + }, + "linkIdentifier": "805319460" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..f8c0d4e7b4a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateEndpointConnectionUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "connectionName": "connection1", + "parameters": { + "name": "connection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId2/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." + }, + "linkIdentifier": "linkId" + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateLinkResourceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateLinkResourceList.json new file mode 100644 index 000000000000..f4570574a966 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayPrivateLinkResourceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "privateLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/privateLinkResources/privateLink1", + "type": "Microsoft.Network/applicationGateways/privateLinkResources", + "properties": { + "groupId": "privateLink1", + "requiredMembers": [ + "privateLink1" + ], + "requiredZoneNames": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..a03716a113e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..a03716a113e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..7071980bdd0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..f387163f6a9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..ca5febd4ea0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..139130448314 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..928cc794ed7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..c4790324c28d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..c646791a3024 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..5024dd38817e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..c53ed640154c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..0d8ef51f3d4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..00187d46b85c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..e47e8f55fd0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..b505dc8b404c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..900e17101048 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..f583e1565b09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..43157b00214e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..ae797ee9b189 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..8a055c03b5ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..80a64282701b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..55acdc7d8507 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..68c488619842 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..e9d69c0147ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..4928ed81317e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2020-08-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" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..df29928d61f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2020-08-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" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..b76e778dc207 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..fb31baeca61a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "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": { + "publicIPs": { + "addresses": [], + "count": 1 + } + } + } + } + }, + "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", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "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": { + "publicIPs": { + "addresses": [ + { + "address": "13.73.240.12" + } + ], + "count": 1 + }, + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "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", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "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": { + "publicIPs": { + "addresses": [ + { + "address": "13.73.240.12" + } + ], + "count": 1 + }, + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..1cf9931ea585 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..b298bdd223ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..43244b38e97c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..188aff73288f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "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", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "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" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "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" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..7f58d260f1fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "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/2020-08-01/examples/AzureWebCategoriesListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureWebCategoriesListBySubscription.json new file mode 100644 index 000000000000..95144e5a96e5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureWebCategoriesListBySubscription.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "4de8428a-4a92-4cea-90ff-b47128b8cab8" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Arts", + "id": "/subscriptions/4de8428a-4a92-4cea-90ff-b47128b8cab8/providers/Microsoft.Network/azureWebCategories/Arts", + "type": "Microsoft.Network/azureWebCategories", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "group": "General" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureWebCategoryGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureWebCategoryGet.json new file mode 100644 index 000000000000..a7631393af51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/AzureWebCategoryGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "4de8428a-4a92-4cea-90ff-b47128b8cab8", + "name": "Arts" + }, + "responses": { + "200": { + "body": { + "name": "Arts", + "id": "/subscriptions/4de8428a-4a92-4cea-90ff-b47128b8cab8/providers/Microsoft.Network/azureWebCategories/Arts", + "type": "Microsoft.Network/azureWebCategories", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "group": "General" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..b6407a40799e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..e5b1fa1987df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..48a134982c8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..12544a24e0ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..90a4f429bd45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..4cc4ea9f0f54 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..b83e5976edce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..c3dff87cce23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..508826ca26d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..374f9684b6c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..801426b545cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..fb009bba4040 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..5e9d6b4d7fa7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceGet.json new file mode 100644 index 000000000000..3f72c05b29ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "cloudServiceName": "cs1", + "roleInstanceName": "TestVMRole_IN_0" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_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.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, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceList.json new file mode 100644 index 000000000000..1137a9aa39d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "cloudServiceName": "cs1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_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, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_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, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServicePublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServicePublicIpGet.json new file mode 100644 index 000000000000..f25e5062b648 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServicePublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "roleInstanceName": "Test_VM_0", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/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/2020-08-01/examples/CloudServicePublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServicePublicIpListAll.json new file mode 100644 index 000000000000..3c4e0b96de21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServicePublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/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/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_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/2020-08-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json new file mode 100644 index 000000000000..61fcbce738e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceRoleInstanceNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "cloudServiceName": "cs1", + "roleInstanceName": "TestVMRole_IN_0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_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.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, + "roleInstance": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/TestVMRole_IN_0" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceRoleInstancePublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceRoleInstancePublicIpList.json new file mode 100644 index 000000000000..bb6d9356a408 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CloudServiceRoleInstancePublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "cloudServiceName": "cs1", + "resourceGroupName": "cs-tester", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "roleInstanceName": "Test_VM_0", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/cs-tester/providers/Microsoft.Compute/cloudServices/cs1/roleInstances/Test_VM_0/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/2020-08-01/examples/CustomIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..e870ed12dc1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixCreateCustomizedValues.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "cidr": "0.0.0.0/24" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + }, + "201": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixDelete.json new file mode 100644 index 000000000000..f9b016c9a904 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixGet.json new file mode 100644 index 000000000000..2cc32345149c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixList.json new file mode 100644 index 000000000000..92c4cd7b3d76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.1.0/30", + "commissionedState": "Commissioned", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixListAll.json new file mode 100644 index 000000000000..ae7819132448 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixListAll.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.0.0/24", + "commissionedState": "Commissioned", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/customIpPrefixes/test-customipprefix2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.1.0/30", + "commissionedState": "Commissioned", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + }, + { + "name": "test-customipprefix2", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/customIpPrefixes/test-customipprefix2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "0.0.1.0/22", + "commissionedState": "Provisioning", + "publicIpPrefixes": [] + }, + "type": "Microsoft.Network/customIpPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixUpdateTags.json new file mode 100644 index 000000000000..0d975aeeb153 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/CustomIpPrefixUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "customIpPrefixName": "test-customipprefix", + "zones": [ + "1" + ], + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-customipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/customIpPrefixes/test-customipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "cidr": "192.168.254.2/24", + "commissionedState": "Provisioning", + "publicIpPrefixes": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/customIpPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..2cb6fd54e6a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..54d4d08067e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..46cf574d7f31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..9de219e7cd6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..2c005bfabe06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..33734b282703 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..72073c757749 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..ff2153f4cca4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..78305e2e5a68 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..d36a6a7f18ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..e0ec2ca89749 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..b53e8e49ad88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/DscpConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationCreate.json new file mode 100644 index 000000000000..9057c779410d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationCreate.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpconfig", + "parameters": { + "properties": { + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp", + "associatedNetworkInterfaces": [], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + }, + "201": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + }, + { + "startIP": "127.0.1.1", + "endIP": "127.0.1.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + }, + { + "startIP": "127.0.11.1", + "endIP": "127.0.11.2" + } + ], + "sourcePortRanges": [ + { + "start": 10, + "end": 11 + }, + { + "start": 20, + "end": 21 + } + ], + "destinationPortRanges": [ + { + "start": 15, + "end": 15 + }, + { + "start": 26, + "end": 27 + } + ], + "protocol": "Tcp", + "associatedNetworkInterfaces": [], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationDelete.json new file mode 100644 index 000000000000..56dd3eb69709 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpConfig" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationGet.json new file mode 100644 index 000000000000..e1c1f11e1612 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "dscpConfigurationName": "mydscpConfig" + }, + "responses": { + "200": { + "body": { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationList.json new file mode 100644 index 000000000000..b2e5b22e74dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationList.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + }, + { + "name": "mydscpConfig2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic4" + ], + "qosCollectionId": "9as24mf6-d9cb-7a7f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "128.0.0.1", + "endIP": "128.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "128.0.10.1", + "endIP": "128.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationListAll.json new file mode 100644 index 000000000000..088b989e514e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/DscpConfigurationListAll.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydscpConfig", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/dscpConfiguration/mydscpConfig", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2" + ], + "qosCollectionId": "0f8fad5b-d9cb-469f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "127.0.0.1", + "endIP": "127.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "127.0.10.1", + "endIP": "127.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + }, + { + "name": "mydscpConfig2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/dscpConfiguration/mydscpConfig2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "associatedNetworkInterfaces": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/test-nic3", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/test-nic4" + ], + "qosCollectionId": "9as24mf6-d9cb-7a7f-a165-70867728950e", + "markings": [ + 46, + 10 + ], + "sourceIpRanges": [ + { + "startIP": "128.0.0.1", + "endIP": "128.0.0.2" + } + ], + "destinationIpRanges": [ + { + "startIP": "128.0.10.1", + "endIP": "128.0.10.2" + } + ], + "sourcePortRanges": [ + { + "start": 11, + "end": 12 + } + ], + "destinationPortRanges": [ + { + "start": 61, + "end": 62 + } + ], + "protocol": "Tcp" + }, + "type": "Microsoft.Network/dscpConfiguration" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForConnection.json new file mode 100644 index 000000000000..c12d9d46e8c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForConnection.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2020-08-01", + "effectiveRoutesParameters": { + "resourceId": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "virtualWanResourceType": "ExpressRouteConnection" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForRouteTable.json new file mode 100644 index 000000000000..9bcaf54ce772 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForRouteTable.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2020-08-01", + "effectiveRoutesParameters": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "virtualWanResourceType": "RouteTable" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForVirtualHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForVirtualHub.json new file mode 100644 index 000000000000..ba32b09603f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EffectiveRoutesListForVirtualHub.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "virtualHub1", + "api-version": "2020-08-01", + "effectiveRoutesParameters": null + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..188a8716a85d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..e05d43f3afa0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..3462765c020a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "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/2020-08-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..a91cbaf5ab7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..5dd10b816276 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..d8d702488e88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..31d02c726d73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "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", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "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", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..d2ebe4440f6a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..099ce80b946e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..d2a0660db720 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "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/2020-08-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..eab49ec35a78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..8e360fef3cf4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..0fd7730f60ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..78458926b4fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..c0a49436a201 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..2363aa3d50b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..6a19c290d1b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "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/2020-08-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..7544ece80f9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..c39e9d9bfbd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..3ad180992585 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..f795f648a1ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..3573b51d34b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..d1ce4bd91fbb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..667505a3ce92 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..b1ca3b4b2b54 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..6cec5aedd6e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-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, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + }, + "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, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..2c6bec2c1af1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..972fe9f6c59f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-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, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..11e10d5b7785 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enableInternetSecurity": false, + "expressRouteGatewayBypass": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..a2c70df840a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..56e474d601be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..e12731dd3827 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..9b51fc4ee98b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..cc80cb6d1073 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..c9b95c20b87f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..e97ccb723a27 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..5bf55d6af2b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..e8cc311528f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..baf31214f40a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..76c18ee46ba9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..b4d90c0bd0eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..461f89de1898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..97dbb55ef372 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..5bf0e73a88de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..cce11f27a622 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..91e062a7c3cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/hvirtualHubNameub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayUpdateTags.json new file mode 100644 index 000000000000..0868a1dcf7d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteGatewayUpdateTags.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "expressRouteGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "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", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..831db13ce17e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..e5a925236df5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..483330cb8fdf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..6766f276c52f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..2502930fc87f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..8c8341561fb0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..1c621477fd11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..6ac3fa67d5c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..a59bf87ecc32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..6ba96697af8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..7c02cf77cf3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-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/2020-08-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..51b08b7ce263 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..7ace759f7703 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..eb741a03c36e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyGet.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "firewalls": [], + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..29bb74f5447c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "firewalls": [], + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Standard" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..6d696b9907e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + } + ], + "firewalls": [], + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Standard" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json new file mode 100644 index 000000000000..b3157c963865 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupGet.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "NatRule1", + "translatedFqdn": "internalhttpserver", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ], + "name": "NatRC", + "priority": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json new file mode 100644 index 000000000000..b551f89e44f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyNatRuleCollectionGroupPut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "priority": 100, + "name": "Example-Nat-Rule-Collection", + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "name": "Example-Nat-Rule-Collection", + "priority": 100, + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyNatRuleCollection", + "name": "Example-Nat-Rule-Collection", + "priority": 100, + "action": { + "type": "DNAT" + }, + "rules": [ + { + "ruleType": "NatRule", + "name": "nat-rule1", + "translatedFqdn": "internalhttp.server.net", + "translatedPort": "8080", + "ipProtocols": [ + "TCP", + "UDP" + ], + "sourceAddresses": [ + "2.2.2.2" + ], + "sourceIpGroups": [], + "destinationAddresses": [ + "152.23.32.23" + ], + "destinationPorts": [ + "8080" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..ef4813ab36d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyPut.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + }, + "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", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup2" + } + ], + "firewalls": [], + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + }, + "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", + "threatIntelWhitelist": { + "ipAddresses": [ + "20.3.4.5" + ], + "fqdns": [ + "*.microsoft.com" + ] + }, + "ruleCollectionGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup2" + } + ], + "firewalls": [], + "dnsSettings": { + "servers": [ + "30.3.4.5" + ], + "enableProxy": true, + "requireProxyForNetworkRules": false + }, + "sku": { + "tier": "Premium" + }, + "intrusionDetection": { + "mode": "Alert", + "configuration": { + "signatureOverrides": [ + { + "id": "2525004", + "mode": "Deny" + } + ], + "bypassTrafficSettings": [ + { + "name": "bypassRule1", + "description": "Rule 1", + "protocol": "TCP", + "sourceAddresses": [ + "1.2.3.4" + ], + "destinationAddresses": [ + "5.6.7.8" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + }, + "transportSecurity": { + "certificateAuthority": { + "name": "clientcert", + "keyVaultSecretId": "https://kv/secret" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupDelete.json new file mode 100644 index 000000000000..b03183f63b42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupGet.json new file mode 100644 index 000000000000..77404b9b0da2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupList.json new file mode 100644 index 000000000000..f878986054f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "network-rule-1", + "ruleType": "NetworkRule", + "description": "Network rule", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupPut.json new file mode 100644 index 000000000000..a9d0b3aeb072 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupPut.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "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": 100, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 100, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..e207b279fdf8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-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, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-rule1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json new file mode 100644 index 000000000000..7d54ef9a308b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "network-rule-1", + "ruleType": "NetworkRule", + "description": "Network rule", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..2852f85a85f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "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, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "NetworkRule", + "name": "network-1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json new file mode 100644 index 000000000000..1d0bd08b8661 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "ruleCollectionGroupName": "ruleCollectionGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2" + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "priority": 200, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json new file mode 100644 index 000000000000..7833a2ba69d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "name": "Example-Filter-Rule-Collection", + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "priority": 120, + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json new file mode 100644 index 000000000000..b9e37c397b14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "e747cc13-97d4-4a79-b463-42d7f4e558f2", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleCollectionGroupName": "ruleCollectionGroup1", + "parameters": { + "properties": { + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleCollectionGroup1", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleCollectionGroups/ruleCollectionGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/e747cc13-97d4-4a79-b463-42d7f4e558f2/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "ruleCollections": [ + { + "ruleCollectionType": "FirewallPolicyFilterRuleCollection", + "name": "Example-Filter-Rule-Collection", + "action": { + "type": "Deny" + }, + "rules": [ + { + "ruleType": "ApplicationRule", + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ], + "webCategories": [ + "Hacking" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateExpressRoutePortsLOA.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateExpressRoutePortsLOA.json new file mode 100644 index 000000000000..4d7e5c522fad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateExpressRoutePortsLOA.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-08-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "request": { + "customerName": "customerName" + } + }, + "responses": { + "200": { + "description": "Request successful. Returns the content as a base64 encoded string", + "body": { + "encodedContent": "TWFuIGlzIGRpc3" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..18b763c2f583 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..aed5efd903ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableDelete.json new file mode 100644 index 000000000000..ab8306def6d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableGet.json new file mode 100644 index 000000000000..31d7d3adea10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableList.json new file mode 100644 index 000000000000..c282b78d7c14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTableList.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "hubRouteTable1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1a", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + }, + { + "name": "hubRouteTable2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route2a", + "destinationType": "CIDR", + "destinations": [ + "40.0.0.0/8", + "50.0.0.0/8", + "60.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubVirtualNetworkConnections/vn1" + } + ], + "labels": [ + "label3" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn4" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn2", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn1" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTablePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTablePut.json new file mode 100644 index 000000000000..095646617b67 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubRouteTablePut.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "routeTableName": "hubRouteTable1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "routeTableParameters": { + "properties": { + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "hubRouteTable1", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "destinationType": "CIDR", + "destinations": [ + "10.0.0.0/8", + "20.0.0.0/8", + "30.0.0.0/8" + ], + "nextHopType": "ResourceId", + "nextHop": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azureFirewall1" + } + ], + "labels": [ + "label1", + "label2" + ], + "associatedConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/vnetConnn2" + ], + "propagatingConnections": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/erg1/expressRouteConnections/erConn1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw1/vpnConnections/vpnConn2" + ] + }, + "type": "Microsoft.Network/virtualHubs/hubRouteTables" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionDelete.json new file mode 100644 index 000000000000..8d93748dbb9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..9c3c8b006fbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..bee0e2c49716 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + }, + { + "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" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionPut.json new file mode 100644 index 000000000000..480b26e145bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/HubVirtualNetworkConnectionPut.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "hubVirtualNetworkConnectionParameters": { + "properties": { + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Updating", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + }, + "201": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Updating", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "enableInternetSecurity": false, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [ + { + "name": "route1", + "addressPrefixes": [ + "10.1.0.0/16", + "10.2.0.0/16" + ], + "nextHopIpAddress": "10.0.0.68" + }, + { + "name": "route2", + "addressPrefixes": [ + "10.3.0.0/16", + "10.4.0.0/16" + ], + "nextHopIpAddress": "10.0.0.65" + } + ] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..2f3c91a706d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..91a0c7177af2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..af1a8575ea66 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..a3092fd2933b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/InboundSecurityRulePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundSecurityRulePut.json new file mode 100644 index 000000000000..58216db9654f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/InboundSecurityRulePut.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "ruleCollectionName": "rule1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "properties": { + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "protocol": "TCP", + "sourceAddressPrefix": "50.20.121.5/32", + "destinationPortRange": 22 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationCreate.json new file mode 100644 index 000000000000..40d31b7b90b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "parameters": { + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + }, + "201": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationDelete.json new file mode 100644 index 000000000000..b4a4ee9c7389 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationGet.json new file mode 100644 index 000000000000..e546afd518c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationList.json new file mode 100644 index 000000000000..3f8fd0954db9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationListByResourceGroup.json new file mode 100644 index 000000000000..230047f499b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationUpdateTags.json new file mode 100644 index 000000000000..75de32f0eb6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpAllocationUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "location": "centraluseuap", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..2a1145a3534f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..166ff3d151be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..757770a4665c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..efde9193e186 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..63c21d455579 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..c834ca5724a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-08-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ], + "firewallPolicies": [] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json new file mode 100644 index 000000000000..062f808a9209 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolListWithBackendAddressesPoolType.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-08-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", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json new file mode 100644 index 000000000000..67c68a2823bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-08-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", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json new file mode 100644 index 000000000000..aac937171908 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LBBackendAddressPoolWithBackendAddressesPut.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-08-01", + "parameters": { + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ] + } + } + }, + "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", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + }, + "201": { + "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", + "loadBalancerBackendAddresses": [ + { + "name": "address1", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.4" + } + }, + { + "name": "address2", + "properties": { + "virtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb" + }, + "ipAddress": "10.0.0.5" + } + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolDelete.json new file mode 100644 index 000000000000..e73c60a85c23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-08-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..7b39af1901da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..3c759356a52c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..beb9e4adc44d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerCreateGlobalTier.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateGlobalTier.json new file mode 100644 index 000000000000..0ad9652cebf8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateGlobalTier.json @@ -0,0 +1,314 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard", + "tier": "Global" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "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 + } + } + ] + } + } + }, + "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", + "tier": "Global" + }, + "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", + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ], + "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": false, + "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" + } + ] + } + } + ] + } + } + }, + "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", + "tier": "Global" + }, + "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", + "loadBalancerBackendAddresses": [ + { + "name": "regional-lb1-address", + "properties": { + "loadBalancerFrontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb" + } + } + } + ], + "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": false, + "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" + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..4e94df3fb42c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..6a6a3850895f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "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/2020-08-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..eb9c0137c13b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..4f1b5c118d17 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..69ef74323486 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..178fdc40ef5a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..4d2b032f77b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..3a7c48c92ec5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..b802c7abecc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..fedb2992051f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..8324b63430df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..342cbb82c3e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..c5a7bec74993 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..b7d55992d9e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..c589dee140f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..47e762510daa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..f624d0169623 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..b5b4fde14966 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-08-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/2020-08-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..4ffe2cac1994 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..411567f78ec6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "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/2020-08-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..2261d868b6de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..34a25003338c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..99459e682bfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..a2760383b573 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..01136d443187 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-08-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": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..dd8b4912d33d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..b62d0b8ff7ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..4e3577bc699f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..89ac123cb571 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..d1f25d78acb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleDelete.json new file mode 100644 index 000000000000..b3eac15776bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleGet.json new file mode 100644 index 000000000000..3a331a5bd25a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "natRuleName": "natRule1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [], + "egressVpnSiteLinkConnections": [], + "ingressVpnSiteLinkConnections": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleList.json new file mode 100644 index 000000000000..6eb438298030 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRuleList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-08-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + }, + { + "name": "natRule2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG1/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRulePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRulePut.json new file mode 100644 index 000000000000..fd08317b647d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NatRulePut.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "natRuleName": "natRule1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "NatRuleParameters": { + "properties": { + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + }, + "201": { + "body": { + "name": "natRule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/natRule1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "type": "Static", + "mode": "EgressSnat", + "ipConfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/cloudnet1-VNG/ipConfigurations/default", + "internalMappings": [ + { + "addressSpace": "10.4.0.0/24" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.21.0/24" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection1" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/vpnLinkConnection2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..1c57d321dbd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..9303bb33a694 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..4cc4fafbe1d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..b34486d409d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..bbcf05b92275 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "dscpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/dscpConfiguration/mydscpconfiguration" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..1f7b688648af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..f80677a23de7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..feb134d00869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..a7921de9f21a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..f458c696e84b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..70509ebabfbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..5ed6c189ba58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..160d709ea2e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..e779026d7158 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..b0c9d79bf486 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..bc9e2f41beba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..79b1b0ed7fa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..385a06ff7d7c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..c8d95c992424 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..498a79da2dfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..52ebc78956cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..fdcf64142693 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..114076c684a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..d622b33cec41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..058933293ea9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..a1f1b464fb17 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..771cd496bccf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..b753d3a82674 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..8a5b45715c49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..b40e13293de4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..214098eaaf45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..7851b83874f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..658c8e3312dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..e018136fbd86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..0b72a276386f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..5388c90253f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..90eb63be52db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..19c0e934b606 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "inboundSecurityRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/InboundSecurityRules/rule1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteDelete.json new file mode 100644 index 000000000000..1985e69cf84e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteGet.json new file mode 100644 index 000000000000..e2f31ced1752 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteList.json new file mode 100644 index 000000000000..4e6e9afb6dfd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSiteList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSitePut.json new file mode 100644 index 000000000000..b2c6066351b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSitePut.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "siteName": "site1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "properties": { + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + }, + "201": { + "body": { + "name": "site1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva/virtualApplianceSites/site1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "192.168.1.0/24", + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": true + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuGet.json new file mode 100644 index 000000000000..8703aa3e57de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "skuName": "ciscoSdwan" + }, + "responses": { + "200": { + "body": { + "name": "ciscoSdwan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualApplianceSkus/ciscoSdwan", + "type": "Microsoft.Network/networkVirtualApplianceSkus", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "vendor": "Cisco", + "availableVersions": [ + "11.12" + ], + "availableScaleUnits": [ + { + "scaleUnit": "1", + "instanceCount": 2 + }, + { + "scaleUnit": "2", + "instanceCount": 2 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuList.json new file mode 100644 index 000000000000..758d8775a1a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceSkuList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ciscoSdwan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualApplianceSkus/ciscoSdwan", + "type": "Microsoft.Network/networkVirtualApplianceSkus", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "vendor": "Cisco", + "availableVersions": [ + "11.12" + ], + "availableScaleUnits": [ + { + "scaleUnit": "1", + "instanceCount": 2 + }, + { + "scaleUnit": "2", + "instanceCount": 2 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..3c6b8b97d9e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "nvaSku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "addressPrefix": "192.168.1.0/16", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "virtualApplianceSites": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networtkVirtualAppliances/nva/virtualApplianceSites/site1" + } + ], + "provisioningState": "Succeeded", + "bootStrapConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlobs": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..6319d7b56590 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..a8f451447d94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..e58ec132b3df --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "location": "eastus", + "properties": { + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..28058b62f983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..2d1624e0fc60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..06f501cb92ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct1" + }, + { + "name": "destination", + "address": "bing.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "endpoints": [ + { + "name": "source", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/ct2" + }, + { + "name": "destination", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "tcp", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80 + } + } + ], + "testGroups": [ + { + "name": "tg", + "testConfigurations": [ + "tcp" + ], + "sources": [ + "source" + ], + "destinations": [ + "destination" + ] + } + ] + }, + "location": "eastus", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..d6c6065525d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/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/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/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/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..e1dcb8e9f67f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..e1dcb8e9f67f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..d7b1b3be8fb0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..ce9d287776b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..a8e38ec1a30a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-08-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 + }, + "preferredIPVersion": "IPv4" + } + }, + "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/2020-08-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..ddca5d3da3a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..77ae6c925075 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..5efef3679de4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..c3fed04d0d4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..9c29caba4812 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..b3202e3766ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..179562d2d3c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..0ed312096f49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherFlowLogUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogUpdateTags.json new file mode 100644 index 000000000000..9cb7c52c1ad0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherFlowLogUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw", + "flowLogName": "fl", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..2df4a37d594f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..9dc80a470014 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..1dbb9cd5e83e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..7e5a8c2eeccb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..347bb2082a45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..b136c3b999ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..96b5ab6878c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..70c35bda6bba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..bc113b8e8807 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..6bac447b9447 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..ceaa0d0789b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..6636bcb59134 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..b853549ae362 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..872958e6fc4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..17bac4f93c0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..4ff33f5dc99a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..b85aae2c7a24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/OperationList.json new file mode 100644 index 000000000000..3fad6099ade5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-08-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/2020-08-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..1fba7f1f64d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..aa6515c9648a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..b7b284f51c33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..8ec97ca712ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..75cfa92417f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2020-08-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..5a130ecf324b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,157 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": true + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + }, + { + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": true + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "4.4.4.4" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..98e3c4940276 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + }, + { + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "4.4.4.4" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..b11d7ae27cd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,210 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "isRoutingPreferenceInternet": false + } + } + }, + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + }, + "isRoutingPreferenceInternet": false + } + } + }, + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "1.1.1.1", + "2.2.2.2" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayReset.json new file mode 100644 index 000000000000..5d21f79f971e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayReset.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..b13d3da529eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "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" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + }, + "enableInternetSecurity": false + } + } + ], + "vpnGatewayScaleUnit": 1, + "customDnsServers": [ + "3.3.3.3" + ], + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + }, + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..5c637dbb20f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2020-08-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..ee54bf0204f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..f98060742daa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..d7051042cfa1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "extendedLocation": { + "type": "EdgeZone", + "name": "edgeZone0" + }, + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..fe845b2c86f7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..eeb4b729be32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupCreate.json new file mode 100644 index 000000000000..ab498978545d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupCreate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup", + "parameters": { + "properties": { + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupDelete.json new file mode 100644 index 000000000000..73ba9b9238eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupGet.json new file mode 100644 index 000000000000..db809c53d6b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + }, + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupList.json new file mode 100644 index 000000000000..24e836bd77b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointDnsZoneGroupList.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPdnsgroup1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup1", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + }, + { + "name": "testPdnsgroup2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup2", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc3", + "fqdn": "abc3.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc4", + "fqdn": "abc4.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..3332dccdc2f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..eb761999656b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..e978e8175aa8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointList.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.7" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..735d78dbe155 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2020-08-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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.5" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + } + ] + } + }, + { + "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", + "actionsRequired": "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" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc5.cosmos2.com", + "ipAddresses": [ + "192.168.0.7" + ] + }, + { + "fqdn": "abc6.cosmos2.com", + "ipAddresses": [ + "192.168.0.8" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..821568aae815 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "extendedLocation": { + "type": "EdgeZone", + "name": "edgeZone0" + }, + "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/2020-08-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..b011bec473a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..e814c56cb851 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..81b1efe5ffe9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..f4c18255c230 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "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/2020-08-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..7b6de1c9857c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..7056afae155d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..10f235512767 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..d2e86325a408 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..529b359be568 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard", + "tier": "Global" + }, + "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", + "tier": "Global" + }, + "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", + "tier": "Global" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..e61af1345a5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..4e3c1a43b11d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..d02c6825c9f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..24a39e4d535b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..5e658780b6f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..6fc284a7823d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..389251f94fe0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..2d33f4c80dcc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard", + "tier": "Regional" + } + } + }, + "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", + "tier": "Regional" + }, + "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", + "tier": "Regional" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..82ad9a1d5b37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..bd47dd2c77db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..cc8af597e2b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..046aa14f2b26 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..6c56eef02702 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..d07d07d5911f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..65d8d2a78574 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "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/2020-08-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..067c7983e90c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..82d78dd5a9a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..d2f9608d7839 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..699b26bda381 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..f90d1a9a7b87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..4dd58332eaaa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..655ca71e4789 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..71aa7063ad0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..de6a7c20050c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "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/2020-08-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..a998d9705d3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..6522dffa4ede --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..54b63115ca3a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..0be0632536a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableList.json new file mode 100644 index 000000000000..1d1c9a28fe42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..ebbe0082b43c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..33941688d2b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..0aaa68edbe5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..474314ca00f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..73d911dba2d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..eb0707551f32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/SecurityPartnerProviderDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderDelete.json new file mode 100644 index 000000000000..83021fb19aef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderGet.json new file mode 100644 index 000000000000..b31e2da4f96d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListByResourceGroup.json new file mode 100644 index 000000000000..bda9433e4eda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListByResourceGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListBySubscription.json new file mode 100644 index 000000000000..a7a940d2ca25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderListBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderPut.json new file mode 100644 index 000000000000..a3263dc35183 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "201": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderUpdateTags.json new file mode 100644 index 000000000000..5b1b4dd72841 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SecurityPartnerProviderUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..15f04591e41b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..1bafcc6742bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..b813c3a7d569 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..17616fdba403 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..3be76734cc0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..1a39c67e49aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..ff9de00712b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..92828ac47377 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..cdb88c4052cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..67bcf0d64ce2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..2cdbd0626329 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..d6f0c2b24257 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..320d94aa9952 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/ServiceTagsList.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-08-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" + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/centraluseuap/serviceTags?api-version=2020-06-01&changenumber=changenumber&$skipToken={skipToken}" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..dbfc69bfa4da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..3d75a679d995 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..deb75df83f41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..bcd718e0e67d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetGet.json new file mode 100644 index 000000000000..3ee8e19f7cb0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..e9f72c328a11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetList.json new file mode 100644 index 000000000000..a1eebe78adc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-08-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/2020-08-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..41dc935cc236 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..e2cc3409cde6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/UsageList.json new file mode 100644 index 000000000000..56ba1744a362 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-08-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/2020-08-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..21e9105b1f29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2020-08-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/2020-08-01/examples/VirtualHubBgpConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionDelete.json new file mode 100644 index 000000000000..42316709e053 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionGet.json new file mode 100644 index 000000000000..95ca432a50b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionList.json new file mode 100644 index 000000000000..eff01338f525 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionPut.json new file mode 100644 index 000000000000..d74d24b59f9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubBgpConnectionPut.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "connectionName": "conn1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + }, + "201": { + "body": { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/bgpConnections/conn1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000, + "connectionState": "Connected" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..1c4b0e47fa72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..73bd126cade9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationDelete.json new file mode 100644 index 000000000000..317e63d71fcc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "ipConfigName": "ipconfig1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationGet.json new file mode 100644 index 000000000000..44de79ab0d09 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "ipConfigName": "ipconfig1" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationList.json new file mode 100644 index 000000000000..a71d4b6d2abc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationPut.json new file mode 100644 index 000000000000..b1e8fc589a19 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubIpConfigurationPut.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "ipConfigName": "ipconfig1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualHubName": "hub1", + "parameters": { + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + }, + "201": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/ipConfigurations/ipconfig1", + "type": "Microsoft.Network/virtualHubs/ipConfigurations", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..076bce735ef4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubList.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + }, + { + "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" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..b348cbffcaa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + }, + { + "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" + }, + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..6299fbe45948 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubPut.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "sku": "Basic" + } + } + }, + "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" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + }, + "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" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "routingState": "Provisioned", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..59c9f7319072 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..93054a76667e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..84d233a77d3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..75aa72429433 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..15ea0429ff10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + }, + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic", + "virtualRouterAsn": 65515, + "virtualRouterIps": [ + "10.10.1.12", + "10.10.1.13" + ], + "allowBranchToBranchTraffic": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..4e7bf9fd100e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..8969cdfb99f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..ee6057003839 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..d9b004e01518 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..5de886b04e6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..4324d34ad140 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..3c043ee7057a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..aa660957d85b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-08-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" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000" + } + }, + "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" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000", + "regionalCommunity": "12076:50004" + }, + "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" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:20000", + "regionalCommunity": "12076:50004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..f8a0e31c2550 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..06da7b92229f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-08-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" + }, + "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, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionMode": "Default" + }, + "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, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + }, + "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, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..27e09e416342 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..fcfeac9906fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json new file mode 100644 index 000000000000..7a1dace83818 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetIkeSas.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/westus/operationResults/{operationId}?api-version=2020-08-01" + } + }, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..76ad406ed603 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..2722d0c922bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..1dec0260c1ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..ddf05f15d399 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..714dd76f2c25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-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': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..23c68efc5323 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..a0fd71a7b9ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..4ca6f67fb6a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "dpdTimeoutSeconds": 30, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + }, + { + "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, + "dpdTimeoutSeconds": 20, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "connectionMode": "Default" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..9d8153c73e8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..fdbc5448bcfb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..1e6cdc29d1f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..f02ad236225b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.1.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..e806265e3330 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..13f5af1164ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..da1c149ba85b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..f181da7c47e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..e2df4ec7fb92 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..13f5af1164ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..10fb79fd2a01 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enablePrivateIpAddress": 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", + "privateIPAddress": "10.1.0.7", + "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, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "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/2020-08-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..8b67ae95f8b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..71ba6857aeae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..50ad689eebb3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..8d7dfb2c4a4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..7c4f51b695f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-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': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..903e8baf839a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..42bf1124442b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..717b9f3d9016 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20, + "radiusServerSecret": "radiusServerSecret" + } + ] + }, + "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, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "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, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..4c9af76b073c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..4b0dd9ad60b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..4d42da1713f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2020-08-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..c1f384d08c64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..dc227c57fa4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..4487c738d0fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..b059787df5ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..16f68444d87f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..513ba40a3756 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..50b8f6b8c676 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..e436b2e43f83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..9ad231127deb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..0cd34325ced4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-08-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" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "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" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..1640a95f4b9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..10914edb62bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-08-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" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..5bbd117c6d72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-08-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" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20002", + "regionalCommunity": "12076:50004" + }, + "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" + ] + }, + "remoteBgpCommunities": { + "virtualNetworkCommunity": "12076:20003", + "regionalCommunity": "12076:50004" + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..694f6d42263e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..0ff8dec181d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..cf249f77e5e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..7549be7730a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..d88405804bac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..7828667bdec6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..273c95cc430d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..b9fdf7f5cbc8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..028dff62e154 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..7e6302fe2d6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..599f8c720326 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterPeerListAdvertisedRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeerListAdvertisedRoute.json new file mode 100644 index 000000000000..ec31b965dfeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeerListAdvertisedRoute.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "hubName": "virtualRouter1", + "connectionName": "peer1" + }, + "responses": { + "202": {}, + "200": { + "body": { + "value": [ + { + "localAddress": "10.85.3.4", + "network": "10.45.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + }, + { + "localAddress": "10.85.3.4", + "network": "10.85.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + }, + { + "localAddress": "10.85.3.4", + "network": "10.100.0.0/16", + "nextHop": "10.85.3.4", + "sourcePeer": "10.85.3.4", + "origin": "Igp", + "asPath": "65515", + "weight": 0 + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeerListLearnedRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeerListLearnedRoute.json new file mode 100644 index 000000000000..219653b2b1a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeerListLearnedRoute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "hubName": "virtualRouter1", + "connectionName": "peer1" + }, + "responses": { + "202": {}, + "200": { + "body": { + "value": [ + { + "localAddress": "10.85.3.4", + "network": "10.101.0.0/16", + "nextHop": "10.85.4.4", + "sourcePeer": "10.85.4.4", + "origin": "EBgp", + "asPath": "65002-65001", + "weight": 32768 + }, + { + "localAddress": "10.85.3.5", + "network": "10.101.0.0/16", + "nextHop": "10.85.4.4", + "sourcePeer": "10.85.4.4", + "origin": "EBgp", + "asPath": "65002-65001", + "weight": 32768 + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..9d09dba0e30b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..bf3b3236efc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..be6e24e1a022 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..014d3683ab3a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..493b630769c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..d87aab336a52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..30f2599c3e67 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..c5aa3dffa1bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-08-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" + ], + "type": "Basic" + } + }, + { + "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" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..4665c4ebc128 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-08-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" + ], + "type": "Basic" + } + }, + { + "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" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..ef2f49d8dde9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "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" + ], + "type": "Basic" + } + } + }, + "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" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..9d96f24a454c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..72a51d368be3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-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/2020-08-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..70c6e2f73887 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..6fc76616c3fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionGet.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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, + "vpnLinkConnectionMode": "ResponderOnly" + } + }, + { + "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, + "vpnLinkConnectionMode": "InitiatorOnly" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..fdc211a94c81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionList.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-08-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, + "vpnLinkConnectionMode": "Default" + } + }, + { + "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, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..23ba1a47fc88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionPut.json @@ -0,0 +1,165 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "vpnLinkConnectionMode": "Default" + } + } + ] + } + } + }, + "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, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + }, + "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, + "vpnLinkConnectionMode": "Default" + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCapture.json new file mode 100644 index 000000000000..dcb440d75cdf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCapture.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "parameters": { + "linkConnectionNames": [ + "siteLink1", + "siteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..929ad5ebbd7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "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': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}", + "linkConnectionNames": [ + "siteLink1", + "siteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStopPacketCapture.json new file mode 100644 index 000000000000..fd219f9b284a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnConnectionStopPacketCapture.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "gateway1", + "vpnConnectionName": "vpnConnection1", + "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", + "linkConnectionNames": [ + "vpnSiteLink1", + "vpnSiteLink2" + ] + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..fd05d02a8520 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..fc8524aa023a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayGet.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Dynamic", + "mode": "IgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + }, + { + "name": "nat04", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link2" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..895f934594e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayList.json @@ -0,0 +1,302 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "ingressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Dynamic", + "mode": "IgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ingressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + }, + { + "name": "nat04", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat04", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link2" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + }, + { + "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": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..42d1394d999c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,278 @@ +{ + "parameters": { + "api-version": "2020-08-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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + }, + { + "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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + }, + "type": "Microsoft.Network/vpnGateways/natRules" + } + ], + "isRoutingPreferenceInternet": false + } + }, + { + "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": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..56e5ef4f10f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayPut.json @@ -0,0 +1,376 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "customBgpIpAddresses": [ + "169.254.21.5" + ] + }, + { + "ipconfigurationId": "Instance1", + "customBgpIpAddresses": [ + "169.254.21.10" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "ipConfigurationId": "" + } + } + ], + "isRoutingPreferenceInternet": false + } + } + }, + "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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + } + } + ], + "isRoutingPreferenceInternet": false + } + } + }, + "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, + "egressNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03" + } + ] + } + } + ], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [ + { + "name": "nat03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/natRules/nat03", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "type": "Static", + "mode": "EgressSnat", + "internalMappings": [ + { + "addressSpace": "0.0.0.0/26" + } + ], + "externalMappings": [ + { + "addressSpace": "192.168.0.0/26" + } + ], + "egressVpnSiteLinkConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/vpnLinkConnections/Connection-Link1" + } + ] + } + } + ], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..40e863979905 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayReset.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2020-08-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": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCapture.json new file mode 100644 index 000000000000..edadcd85c8d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..230eacec8260 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "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': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStopPacketCapture.json new file mode 100644 index 000000000000..d55af04e3e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "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/2020-08-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..7b351c0b27cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "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": [], + "routingConfiguration": { + "associatedRouteTable": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + "propagatedRouteTables": { + "labels": [ + "label1", + "label2" + ], + "ids": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubRouteTables/hubRouteTable3" + } + ] + }, + "vnetRoutes": { + "staticRoutes": [] + } + } + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "Instance0", + "defaultBgpIpAddresses": [ + "10.30.0.4" + ], + "customBgpIpAddresses": [ + "169.254.21.5" + ], + "tunnelIpAddresses": [ + "104.208.48.178" + ] + }, + { + "ipconfigurationId": "Instance1", + "defaultBgpIpAddresses": [ + "10.30.0.5" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "104.208.48.179" + ] + } + ] + }, + "natRules": [], + "isRoutingPreferenceInternet": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..b2a0a5891040 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..cbad86b8b16d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..f38604efe0bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..8adc12555885 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..8156ac6869b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25, + "radiusServerSecret": "radiusServerSecret" + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..32ab87f2ebee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..598a4c408da3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-08-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..55998d251f6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..9298ca5f6cb4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..5965f924d0ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..652fdd0d0042 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..6212b19df905 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..7215eb615ed4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..59fae61d7aba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-08-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/2020-08-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..af584b2c29ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSitePut.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ], + "o365Policy": { + "breakOutCategories": { + "allow": true, + "optimize": true, + "default": false + } + } + } + } + }, + "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/2020-08-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..3d72474ffab3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-08-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 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..533c2749cf2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-08-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/2020-08-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..81c507f9fe0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2020-08-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": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "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" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..17382eda07e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-08-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": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "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/2020-08-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..aedbcee64bdf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "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": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "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": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "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/2020-08-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..f6801e8f35f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..e528350a44ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2020-08-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": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "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" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json new file mode 100644 index 000000000000..3bdaae8fbbf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "$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 to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "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 to 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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./virtualWan.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 + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "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." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$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/2020-08-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..776d8cd18500 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRouteCrossConnection.json @@ -0,0 +1,1008 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "readOnly": true, + "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": { + "readOnly": true, + "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/2020-08-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRoutePort.json new file mode 100644 index 000000000000..f69ac2305797 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/expressRoutePort.json @@ -0,0 +1,963 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/generateLoa": { + "post": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_GenerateLOA", + "description": "Generate a letter of authorization for 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." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenerateExpressRoutePortsLOARequest" + }, + "description": "Request parameters supplied to generate a letter of authorization." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the content as a base64 encoded string.", + "schema": { + "$ref": "#/definitions/GenerateExpressRoutePortsLOAResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateExpressRoutePortLOA": { + "$ref": "./examples/GenerateExpressRoutePortsLOA.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": [ + "GcmAes256", + "GcmAes128", + "GcmAesXpn128", + "GcmAesXpn256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + }, + "sciState": { + "type": "string", + "description": "Sci mode enabled/disabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecSciState", + "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": { + "readOnly": true, + "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." + } + } + }, + "GenerateExpressRoutePortsLOARequest": { + "description": "The customer name to be printed on a letter of authorization.", + "properties": { + "customerName": { + "type": "string", + "description": "The customer name." + } + }, + "required": [ + "customerName" + ] + }, + "GenerateExpressRoutePortsLOAResult": { + "description": "Response for GenerateExpressRoutePortsLOA API service call.", + "properties": { + "encodedContent": { + "type": "string", + "description": "The content as a base64 encoded string." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/firewallPolicy.json new file mode 100644 index 000000000000..8c76767749ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/firewallPolicy.json @@ -0,0 +1,1336 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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}/ruleCollectionGroups/{ruleCollectionGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleCollectionGroup.", + "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": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "$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/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_Get", + "description": "Gets the specified FirewallPolicyRuleCollectionGroup.", + "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": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupGet.json" + }, + "Get FirewallPolicyRuleCollectionGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsGet.json" + }, + "Get FirewallPolicyNatRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyNatRuleCollectionGroupGet.json" + }, + "Get FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleCollectionGroup.", + "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": "ruleCollectionGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleCollectionGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleCollectionGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleCollectionGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupPut.json" + }, + "Create FirewallPolicyRuleCollectionGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsPut.json" + }, + "Create FirewallPolicyNatRuleCollectionGroup": { + "$ref": "./examples/FirewallPolicyNatRuleCollectionGroupPut.json" + }, + "Create FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesPut.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}/ruleCollectionGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleCollectionGroups" + ], + "operationId": "FirewallPolicyRuleCollectionGroups_List", + "description": "Lists all FirewallPolicyRuleCollectionGroups 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 FirewallPolicyRuleCollectionGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleCollectionGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupList.json" + }, + "List all FirewallPolicyRuleCollectionGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithIpGroupsList.json" + }, + "List all FirewallPolicyRuleCollectionGroup With Web Categories": { + "$ref": "./examples/FirewallPolicyRuleCollectionGroupWithWebCategoriesList.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." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the firewall policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleCollectionGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleCollectionGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$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" + }, + "threatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "$ref": "#/definitions/FirewallPolicyThreatIntelWhitelist" + }, + "dnsSettings": { + "description": "DNS Proxy Settings definition.", + "$ref": "#/definitions/DnsSettings" + }, + "intrusionDetection": { + "description": "The configuration for Intrusion detection.", + "$ref": "#/definitions/FirewallPolicyIntrusionDetection" + }, + "transportSecurity": { + "description": "TLS Configuration definition.", + "$ref": "#/definitions/FirewallPolicyTransportSecurity" + }, + "sku": { + "description": "The Firewall Policy SKU.", + "$ref": "#/definitions/FirewallPolicySku" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleCollectionGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroupProperties", + "description": "The properties of the firewall policy rule collection 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 Collection Group resource." + }, + "FirewallPolicyRuleCollectionGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Collection Group resource." + }, + "ruleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + }, + "description": "Group of Firewall Policy rule collections." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule collection group resource." + } + }, + "description": "Properties of the rule collection group." + }, + "FirewallPolicyRuleCollection": { + "description": "Properties of the rule collection.", + "discriminator": "ruleCollectionType", + "required": [ + "ruleCollectionType" + ], + "properties": { + "ruleCollectionType": { + "type": "string", + "description": "The type of the rule collection.", + "enum": [ + "FirewallPolicyNatRuleCollection", + "FirewallPolicyFilterRuleCollection" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleCollectionType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule collection." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Collection resource." + } + } + }, + "FirewallPolicyNatRuleCollection": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleCollectionAction", + "description": "The action type of a Nat rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "List of rules included in a rule collection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRuleCollection", + "description": "Firewall Policy NAT Rule Collection." + }, + "FirewallPolicyFilterRuleCollection": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleCollectionAction", + "description": "The action type of a Filter rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "List of rules included in a rule collection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCollection" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRuleCollection", + "description": "Firewall Policy Filter Rule Collection." + }, + "FirewallPolicyRule": { + "description": "Properties of a rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "ruleType": { + "type": "string", + "description": "Rule Type.", + "enum": [ + "ApplicationRule", + "NetworkRule", + "NatRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + } + } + }, + "ApplicationRule": { + "x-ms-discriminator-value": "ApplicationRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "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/FirewallPolicyRuleApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "targetUrls": { + "type": "array", + "description": "List of Urls for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "terminateTLS": { + "type": "boolean", + "description": "Terminate TLS connections for this rule." + }, + "webCategories": { + "type": "array", + "description": "List of destination azure web categories.", + "items": { + "type": "string" + } + } + }, + "description": "Rule of type application." + }, + "NatRule": { + "description": "Rule of type nat.", + "x-ms-discriminator-value": "NatRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleNetworkProtocols." + }, + "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" + } + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + } + } + }, + "NetworkRule": { + "description": "Rule of type network.", + "x-ms-discriminator-value": "NetworkRule", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleNetworkProtocols." + }, + "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" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleApplicationProtocolType" + }, + "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." + }, + "FirewallPolicyRuleApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleCollectionActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleCollectionActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleCollectionAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleCollectionActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleCollectionAction." + }, + "FirewallPolicyFilterRuleCollectionActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleCollectionActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleCollectionAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleCollectionActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleCollectionAction." + }, + "FirewallPolicyRuleNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleNetworkProtocol", + "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." + }, + "FirewallPolicyRuleCollectionGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCollectionGroup" + }, + "description": "List of FirewallPolicyRuleCollectionGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleCollectionGroups API service call." + }, + "FirewallPolicyThreatIntelWhitelist": { + "description": "ThreatIntel Whitelist for Firewall Policy.", + "x-ms-discriminator-value": "FirewallPolicyThreatIntelWhitelist", + "properties": { + "ipAddresses": { + "type": "array", + "description": "List of IP addresses for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + }, + "fqdns": { + "type": "array", + "description": "List of FQDNs for the ThreatIntel Whitelist.", + "items": { + "type": "string" + } + } + } + }, + "DnsSettings": { + "description": "DNS Proxy Settings in Firewall Policy.", + "x-ms-discriminator-value": "DnsSettings", + "properties": { + "servers": { + "type": "array", + "description": "List of Custom DNS Servers.", + "items": { + "type": "string" + } + }, + "enableProxy": { + "type": "boolean", + "description": "Enable DNS Proxy on Firewalls attached to the Firewall Policy." + }, + "requireProxyForNetworkRules": { + "type": "boolean", + "description": "FQDNs in Network Rules are supported when set to true.", + "x-nullable": true + } + } + }, + "FirewallPolicyIntrusionDetection": { + "description": "Configuration for intrusion detection mode and rules.", + "properties": { + "mode": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionStateOptions", + "description": "Intrusion detection general state." + }, + "configuration": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionConfiguration", + "description": "Intrusion detection configuration properties." + } + } + }, + "FirewallPolicyIntrusionDetectionStateOptions": { + "type": "string", + "description": "Possible state values.", + "enum": [ + "Off", + "Alert", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionDetectionStateType", + "modelAsString": true + } + }, + "FirewallPolicyIntrusionDetectionConfiguration": { + "description": "The operation for configuring intrusion detection.", + "properties": { + "signatureOverrides": { + "type": "array", + "description": "List of specific signatures states.", + "items": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionSignatureSpecification" + } + }, + "bypassTrafficSettings": { + "type": "array", + "description": "List of rules for traffic to bypass.", + "items": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionBypassTrafficSpecifications" + } + } + } + }, + "FirewallPolicyIntrusionDetectionSignatureSpecification": { + "properties": { + "id": { + "type": "string", + "description": "Signature id." + }, + "mode": { + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionStateOptions", + "description": "The signature state." + } + }, + "description": "Intrusion detection signatures specification states." + }, + "FirewallPolicyIntrusionDetectionBypassTrafficSpecifications": { + "properties": { + "name": { + "type": "string", + "description": "Name of the bypass traffic rule." + }, + "description": { + "type": "string", + "description": "Description of the bypass traffic rule." + }, + "protocol": { + "type": "string", + "$ref": "#/definitions/FirewallPolicyIntrusionDetectionBypassTrafficProtocol", + "description": "The rule bypass protocol." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses or ranges for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or ranges for this rule.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports or ranges.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Intrusion detection bypass traffic specification." + }, + "FirewallPolicyIntrusionDetectionBypassTrafficProtocol": { + "type": "string", + "description": "Possible intrusion detection bypass traffic protocols.", + "enum": [ + "TCP", + "UDP", + "ICMP", + "ANY" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionDetectionProtocol", + "modelAsString": true + } + }, + "FirewallPolicyTransportSecurity": { + "properties": { + "certificateAuthority": { + "$ref": "#/definitions/FirewallPolicyCertificateAuthority", + "description": "The CA used for intermediate CA generation." + } + }, + "description": "Configuration needed to perform TLS termination & initiation." + }, + "FirewallPolicyCertificateAuthority": { + "properties": { + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "name": { + "type": "string", + "description": "Name of the CA certificate." + } + }, + "description": "Trusted Root certificates properties for tls." + }, + "FirewallPolicySku": { + "properties": { + "tier": { + "type": "string", + "description": "Tier of Firewall Policy.", + "enum": [ + "Standard", + "Premium" + ], + "x-ms-enum": { + "name": "FirewallPolicySkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of Firewall policy." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipAllocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipAllocation.json new file mode 100644 index 000000000000..104841d9ee04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipAllocation.json @@ -0,0 +1,454 @@ +{ + "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": "2020-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.Network/IpAllocations/{ipAllocationName}": { + "delete": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Delete", + "description": "Deletes the specified IpAllocation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete IpAllocation": { + "$ref": "./examples/IpAllocationDelete.json" + } + } + }, + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Get", + "description": "Gets the specified IpAllocation by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$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 IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get IpAllocation": { + "$ref": "./examples/IpAllocationGet.json" + } + } + }, + "put": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_CreateOrUpdate", + "description": "Creates or updates an IpAllocation in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpAllocation" + }, + "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 IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create IpAllocation": { + "$ref": "./examples/IpAllocationCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_UpdateTags", + "description": "Updates a IpAllocation tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update IpAllocation tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/IpAllocationUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_List", + "description": "Gets all IpAllocations 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 IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all IpAllocations": { + "$ref": "./examples/IpAllocationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_ListByResourceGroup", + "description": "Gets all IpAllocations 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 IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List IpAllocations in resource group": { + "$ref": "./examples/IpAllocationListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpAllocationPropertiesFormat": { + "properties": { + "subnet": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet that using the prefix of this IpAllocation resource." + }, + "virtualNetwork": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualNetwork that using the prefix of this IpAllocation resource." + }, + "type": { + "$ref": "#/definitions/IpAllocationType", + "description": "The type for the IpAllocation." + }, + "prefix": { + "type": "string", + "description": "The address prefix for the IpAllocation." + }, + "prefixLength": { + "type": "integer", + "x-nullable": true, + "default": 0, + "description": "The address prefix length for the IpAllocation." + }, + "prefixType": { + "$ref": "./network.json#/definitions/IPVersion", + "default": null, + "description": "The address prefix Type for the IpAllocation." + }, + "ipamAllocationId": { + "type": "string", + "description": "The IPAM allocation ID." + }, + "allocationTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IpAllocation tags." + } + }, + "description": "Properties of the IpAllocation." + }, + "IpAllocation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpAllocationPropertiesFormat", + "description": "Properties of the IpAllocation." + }, + "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": "IpAllocation resource." + }, + "IpAllocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "A list of IpAllocation resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListIpAllocations API service call." + }, + "IpAllocationType": { + "type": "string", + "description": "IpAllocation type.", + "enum": [ + "Undefined", + "Hypernet" + ], + "x-ms-enum": { + "name": "IpAllocationType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipGroups.json new file mode 100644 index 000000000000..8c608523bec3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/ipGroups.json @@ -0,0 +1,430 @@ +{ + "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": "2020-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.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected 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": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$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." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups 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 ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups 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 ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "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": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Firewall resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "firewallPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Firewall Policies resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/loadBalancer.json new file mode 100644 index 000000000000..90bd68f1f00b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/loadBalancer.json @@ -0,0 +1,2268 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Global Tier and one regional load balancer in its backend pool": { + "$ref": "./examples/LoadBalancerCreateGlobalTier.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + }, + "Load balancer with BackendAddressPool containing BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolListWithBackendAddressesPoolType.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + }, + "LoadBalancer with BackendAddressPool with BackendAddresses": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_CreateOrUpdate", + "description": "Creates or updates a 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." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Parameters supplied to the create or update load balancer backend address pool operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer backend pool with backend addresses containing virtual network and IP address.": { + "$ref": "./examples/LBBackendAddressPoolWithBackendAddressesPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Delete", + "description": "Deletes the specified 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": { + "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": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "BackendAddressPoolDelete": { + "$ref": "./examples/LoadBalancerBackendAddressPoolDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 + } + }, + "tier": { + "type": "string", + "description": "Tier of a load balancer SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuTier", + "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 to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "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." + }, + "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." + }, + "LoadBalancerBackendAddressPropertiesFormat": { + "properties": { + "virtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to an existing virtual network." + }, + "ipAddress": { + "type": "string", + "description": "IP Address belonging to the referenced virtual network.", + "x-ms-azure-resource": false + }, + "networkInterfaceIPConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to IP address defined in network interfaces." + }, + "loadBalancerFrontendIPConfiguration": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the frontend ip address configuration defined in regional loadbalancer." + } + }, + "description": "Properties of the load balancer backend addresses." + }, + "LoadBalancerBackendAddress": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerBackendAddressPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address." + } + }, + "description": "Load balancer backend addresses." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "location": { + "type": "string", + "description": "The location of the backend address pool." + }, + "loadBalancerBackendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerBackendAddress" + }, + "description": "An array of backend addresses." + }, + "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": { + "readOnly": true, + "$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": { + "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": "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 to 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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "$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": { + "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": "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": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "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": "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/2020-08-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/natGateway.json new file mode 100644 index 000000000000..a82349c20262 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/natGateway.json @@ -0,0 +1,469 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "readOnly": true, + "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/2020-08-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/network.json new file mode 100644 index 000000000000..1578d116987e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/network.json @@ -0,0 +1,363 @@ +{ + "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": "2020-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": {}, + "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." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the 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 service." + }, + "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 + } + }, + "ExtendedLocationType": { + "type": "string", + "description": "The supported ExtendedLocation types. Currently only EdgeZone is supported in Microsoft.Network resources.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "ExtendedLocation complex type.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + }, + "required": [ + "name", + "type" + ] + } + }, + "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/2020-08-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkInterface.json new file mode 100644 index 000000000000..772d00e21261 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkInterface.json @@ -0,0 +1,1531 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "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 to 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 to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to 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": { + "readOnly": true, + "$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": { + "readOnly": true, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "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 to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to 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": { + "readOnly": true, + "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": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "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." + }, + "dscpConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to the dscp configuration to which the network interface is linked.", + "readOnly": true + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the network interface." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "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": "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 to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "readOnly": true, + "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/2020-08-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkProfile.json new file mode 100644 index 000000000000..506fdcf98c13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "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 to 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": { + "readOnly": true, + "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": { + "readOnly": true, + "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/2020-08-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkSecurityGroup.json new file mode 100644 index 000000000000..cb3531f334bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkSecurityGroup.json @@ -0,0 +1,986 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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", + "*", + "Ah" + ], + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "The type of the resource." + } + }, + "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": { + "readOnly": true, + "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." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$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": { + "readOnly": true, + "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/2020-08-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..f35f85a7c9ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkVirtualAppliance.json @@ -0,0 +1,1170 @@ +{ + "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": "2020-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.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$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": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$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 Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.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/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances 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 Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}/virtualApplianceSites/{siteName}": { + "delete": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_Delete", + "description": "Deletes the specified site from a Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "$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": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Network Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSiteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_Get", + "description": "Gets the specified Virtual Appliance Site.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetNetwork Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSiteGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance Site.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "siteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the site." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance Site operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance Site resource.", + "schema": { + "$ref": "#/definitions/VirtualApplianceSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Virtual Appliance Site": { + "$ref": "./examples/NetworkVirtualApplianceSitePut.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/networkVirtualAppliances/{networkVirtualApplianceName}/virtualApplianceSites": { + "get": { + "tags": [ + "VirtualApplianceSites" + ], + "operationId": "VirtualApplianceSites_List", + "description": "Lists all Network Virtual Appliance Sites in a Network Virtual Appliance resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance site resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSiteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance sites for a given Network Virtual Appliance": { + "$ref": "./examples/NetworkVirtualApplianceSiteList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualApplianceSkus": { + "get": { + "tags": [ + "VirtualApplianceSkus" + ], + "operationId": "VirtualApplianceSkus_List", + "description": "List all SKUs available for a virtual appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all virtual appliance skus.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkVirtualApplianceSkuListResult": { + "$ref": "./examples/NetworkVirtualApplianceSkuList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualApplianceSkus/{skuName}": { + "get": { + "tags": [ + "VirtualApplianceSkus" + ], + "operationId": "VirtualApplianceSkus_Get", + "description": "Retrieves a single available sku for network virtual appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Sku." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested NetworkVirtualAppliance sku information.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceSku" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkVirtualApplianceSkuGet": { + "$ref": "./examples/NetworkVirtualApplianceSkuGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}/inboundSecurityRules/{ruleCollectionName}": { + "put": { + "operationId": "InboundSecurityRule_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance Inbound Security Rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Virtual Appliance." + }, + { + "name": "ruleCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of security rule collection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance Inbound Security Rules operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance Inbound Security Rules resource.", + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance Inbound Security Rules resource.", + "schema": { + "$ref": "#/definitions/InboundSecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Virtual Appliance Inbound Security Rules": { + "$ref": "./examples/InboundSecurityRulePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "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": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "nvaSku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "addressPrefix": { + "type": "string", + "readOnly": true, + "description": "Address Prefix." + }, + "bootStrapConfigurationBlobs": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlobs storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlobs": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "cloudInitConfiguration": { + "type": "string", + "readOnly": false, + "description": "CloudInitConfiguration string in plain text." + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "virtualApplianceSites": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualApplianceSite.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "inboundSecurityRules": { + "type": "array", + "readOnly": true, + "description": "List of references to InboundSecurityRules.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "VirtualApplianceSite": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualApplianceSiteProperties", + "description": "The properties of the Virtual Appliance Sites." + }, + "name": { + "type": "string", + "description": "Name of the virtual appliance site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Site type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Appliance Site resource." + }, + "VirtualApplianceSiteProperties": { + "properties": { + "addressPrefix": { + "type": "string", + "readOnly": false, + "description": "Address Prefix." + }, + "o365Policy": { + "readOnly": false, + "description": "Office 365 Policy.", + "$ref": "#/definitions/Office365PolicyProperties" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "Office365PolicyProperties": { + "properties": { + "breakOutCategories": { + "readOnly": false, + "description": "Office 365 breakout categories.", + "$ref": "#/definitions/BreakOutCategoryPolicies" + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "BreakOutCategoryPolicies": { + "properties": { + "allow": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 allow category." + }, + "optimize": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 optimize category." + }, + "default": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control breakout of o365 default category." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "NetworkVirtualApplianceSku": { + "title": "Available NetworkVirtualApplianceSkus", + "description": "Definition of the NetworkVirtualApplianceSkus resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualApplianceSkuPropertiesFormat", + "description": "NetworkVirtualApplianceSku properties." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "NetworkVirtualApplianceSkuPropertiesFormat": { + "title": "Network Virtual Appliance Sku Properties", + "description": "Properties specific to NetworkVirtualApplianceSkus.", + "properties": { + "vendor": { + "type": "string", + "readOnly": true, + "description": "Network Virtual Appliance Sku vendor." + }, + "availableVersions": { + "type": "array", + "readOnly": true, + "description": "Available Network Virtual Appliance versions.", + "items": { + "type": "string" + } + }, + "availableScaleUnits": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualApplianceSkuInstances" + }, + "description": "The list of scale units available." + } + } + }, + "NetworkVirtualApplianceSkuInstances": { + "title": "Network Virtual Appliance Sku Instances", + "description": "List of available Sku and instances.", + "properties": { + "scaleUnit": { + "type": "string", + "readOnly": true, + "description": "Scale Unit." + }, + "instanceCount": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Instance Count." + } + } + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + }, + "NetworkVirtualApplianceSiteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualApplianceSite" + }, + "description": "List of Network Virtual Appliance sites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualApplianceSites API service call." + }, + "NetworkVirtualApplianceSkuListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualApplianceSku" + }, + "description": "List of Network Virtual Appliance Skus that are available." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualApplianceSkus API service call." + }, + "InboundSecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundSecurityRuleProperties", + "description": "The properties of the Inbound Security Rules." + }, + "name": { + "type": "string", + "description": "Name of security rule collection." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "NVA inbound security rule type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NVA Inbound Security Rule resource." + }, + "InboundSecurityRuleProperties": { + "properties": { + "rules": { + "type": "array", + "readOnly": false, + "description": "List of allowed rules.", + "items": { + "$ref": "#/definitions/InboundSecurityRules" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the Inbound Security Rules resource." + }, + "InboundSecurityRules": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "InboundSecurityRulesProtocol", + "modelAsString": true + }, + "description": "Protocol. This should be either TCP or UDP." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Only /30, /31 and /32 Ip ranges are allowed." + }, + "destinationPortRange": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "NVA port ranges to be opened up. One needs to provide specific ports." + } + }, + "description": "Properties of the Inbound Security Rules resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkWatcher.json new file mode 100644 index 000000000000..0ee5fc3cb755 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/networkWatcher.json @@ -0,0 +1,4744 @@ +{ + "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": "2020-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.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": "NOTE: This feature is currently in preview and still being tested for stability. 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": "NOTE: This feature is currently in preview and still being tested for stability. 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" + } + } + }, + "/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" + }, + { + "name": "migrate", + "in": "query", + "required": false, + "type": "string", + "description": "Value indicating whether connection monitor V1 should be migrated to V2 format." + } + ], + "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 V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.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" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security 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": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_UpdateTags", + "description": "Update tags of the specified flow log.", + "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": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update flow log tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated flow log.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update flow log tags": { + "$ref": "./examples/NetworkWatcherFlowLogUpdateTags.json" + } + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource 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": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log 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." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$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 flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.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}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources 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 flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "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": { + "readOnly": true, + "$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 to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to 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", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 18000, + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "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": "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": { + "readOnly": true, + "type": "string", + "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "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" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "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": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "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." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "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", + "format": "int32", + "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", + "format": "int32", + "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.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "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", + "format": "int32" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "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." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "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", + "format": "int32", + "minimum": 0, + "maximum": 65535 + } + } + }, + "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", + "format": "int32", + "minimum": 0, + "maximum": 65535 + } + } + }, + "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", + "format": "int32" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer", + "format": "int32" + } + } + }, + "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" + } + }, + "previousHopIds": { + "readOnly": true, + "type": "array", + "description": "List of previous hop identifiers.", + "items": { + "type": "string" + } + }, + "links": { + "readOnly": true, + "type": "array", + "description": "List of hop links.", + "items": { + "$ref": "#/definitions/HopLink" + } + }, + "previousLinks": { + "readOnly": true, + "type": "array", + "description": "List of previous hop links.", + "items": { + "$ref": "#/definitions/HopLink" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "HopLink": { + "description": "Hop link.", + "properties": { + "nextHopId": { + "description": "The ID of the next hop.", + "readOnly": true, + "type": "string" + }, + "linkType": { + "description": "Link type.", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HopLinkProperties", + "description": "Hop link properties." + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + }, + "context": { + "readOnly": true, + "type": "object", + "description": "Provides additional context on links.", + "additionalProperties": { + "type": "string" + } + }, + "resourceId": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + } + } + }, + "HopLinkProperties": { + "description": "Hop link properties.", + "properties": { + "roundTripTimeMin": { + "description": "Minimum roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + }, + "roundTripTimeAvg": { + "description": "Average roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + }, + "roundTripTimeMax": { + "description": "Maximum roundtrip time in milliseconds.", + "readOnly": true, + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295 + } + } + }, + "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", + "format": "int32" + }, + "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": "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", + "format": "int32", + "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 '*' and a single port in the range (0 - 65535)." + } + } + }, + "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 + } + }, + "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", + "format": "int32", + "minimum": 30, + "maximum": 1800, + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "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", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "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", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "type": { + "type": "string", + "enum": [ + "AzureVM", + "AzureVNet", + "AzureSubnet", + "ExternalAddress", + "MMAWorkspaceMachine", + "MMAWorkspaceNetwork" + ], + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + }, + "description": "The endpoint type." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + }, + "scope": { + "$ref": "#/definitions/ConnectionMonitorEndpointScope", + "description": "Endpoint scope." + }, + "coverageLevel": { + "type": "string", + "enum": [ + "Default", + "Low", + "BelowAverage", + "Average", + "AboveAverage", + "Full" + ], + "x-ms-enum": { + "name": "CoverageLevel", + "modelAsString": true + }, + "description": "Test coverage for the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointScope": { + "properties": { + "include": { + "type": "array", + "description": "List of items which needs to be included to the endpoint scope.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointScopeItem" + } + }, + "exclude": { + "type": "array", + "description": "List of items which needs to be excluded from the endpoint scope.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointScopeItem" + } + } + }, + "description": "Describes the connection monitor endpoint scope." + }, + "ConnectionMonitorEndpointScopeItem": { + "properties": { + "address": { + "type": "string", + "description": "The address of the endpoint item. Supported types are IPv4/IPv6 subnet mask or IPv4/IPv6 IP address." + } + }, + "description": "Describes the connection monitor endpoint scope item." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "format": "int32", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 65535, + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + }, + "destinationPortBehavior": { + "type": "string", + "description": "Destination port behavior.", + "enum": [ + "None", + "ListenIfAvailable" + ], + "x-ms-enum": { + "name": "DestinationPortBehavior", + "modelAsString": true + } + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "format": "int32", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "number", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "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", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "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": { + "readOnly": true, + "type": "string", + "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of 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/2020-08-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/operation.json new file mode 100644 index 000000000000..1adebd457be4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/operation.json @@ -0,0 +1,271 @@ +{ + "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": "2020-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": { + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/privateEndpoint.json new file mode 100644 index 000000000000..3a3966b36ab3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/privateEndpoint.json @@ -0,0 +1,967 @@ +{ + "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": "2020-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.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups/{privateDnsZoneGroupName}": { + "delete": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Delete", + "description": "Deletes the specified private dns zone 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": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$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 does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Get", + "description": "Gets the private dns zone group resource by specified private dns zone group name.", + "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": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting privateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_CreateOrUpdate", + "description": "Creates or updates a private dns zone group in 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." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "Parameters supplied to the create or update private dns zone group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups": { + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_List", + "description": "Gets all private dns zone groups in a private endpoint.", + "parameters": [ + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "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 dns zone group resources.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroupListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "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": "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": { + "readOnly": true, + "$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." + }, + "customDnsConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomDnsConfigPropertiesFormat" + }, + "description": "An array of custom dns configurations." + } + }, + "description": "Properties of the private endpoint." + }, + "CustomDnsConfigPropertiesFormat": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of private ip addresses of the private endpoint." + } + }, + "description": "Contains custom Dns resolution configuration from customer." + }, + "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": { + "readOnly": true, + "$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." + }, + "PrivateDnsZoneGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "A list of private dns zone group resources in a private endpoint." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateDnsZoneGroups 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." + }, + "PrivateDnsZoneGroup": { + "properties": { + "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." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZoneGroupPropertiesFormat", + "description": "Properties of the private dns zone group." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private dns zone group resource." + }, + "PrivateDnsZoneGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private dns zone group resource." + }, + "privateDnsZoneConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneConfig" + }, + "description": "A collection of private dns zone configurations of the private dns zone group." + } + }, + "description": "Properties of the private dns zone group." + }, + "PrivateDnsZoneConfig": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZonePropertiesFormat", + "description": "Properties of the private dns zone configuration." + } + }, + "description": "PrivateDnsZoneConfig resource." + }, + "PrivateDnsZonePropertiesFormat": { + "properties": { + "privateDnsZoneId": { + "type": "string", + "description": "The resource id of the private dns zone." + }, + "recordSets": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "A collection of information regarding a recordSet, holding information to identify private resources." + } + }, + "description": "Properties of the private dns zone configuration resource." + }, + "RecordSet": { + "properties": { + "recordType": { + "type": "string", + "description": "Resource record type." + }, + "recordSetName": { + "type": "string", + "description": "Recordset name." + }, + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the recordset." + }, + "ttl": { + "type": "integer", + "description": "Recordset time to live." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private ip address of the private endpoint." + } + }, + "description": "A collective group of information about the record set information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/privateLinkService.json new file mode 100644 index 000000000000..bb0fcd51b27e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/privateLinkService.json @@ -0,0 +1,1086 @@ +{ + "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": "2020-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.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}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the 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": "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" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific 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": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/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" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "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" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the load balancer." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "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": "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "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." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "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." + }, + "actionsRequired": { + "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." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection 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/2020-08-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/publicIpAddress.json new file mode 100644 index 000000000000..57805367524b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/publicIpAddress.json @@ -0,0 +1,561 @@ +{ + "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": "2020-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.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 public IP address." + }, + { + "$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": "./network.json#/definitions/CloudError" + } + } + }, + "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 public IP address." + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 + } + }, + "tier": { + "type": "string", + "description": "Tier of a public IP address SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuTier", + "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": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the public ip address." + }, + "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": { + "readOnly": true, + "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." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "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/2020-08-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/publicIpPrefix.json new file mode 100644 index 000000000000..a0733159988a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/publicIpPrefix.json @@ -0,0 +1,505 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 + } + }, + "tier": { + "type": "string", + "description": "Tier of a public IP prefix SKU.", + "enum": [ + "Regional", + "Global" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuTier", + "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": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "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." + }, + "customIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The customIpPrefix that this prefix is associated with." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the public ip address." + }, + "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": { + "readOnly": true, + "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/2020-08-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/routeFilter.json new file mode 100644 index 000000000000..b80265cebd0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of 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": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "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/2020-08-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/routeTable.json new file mode 100644 index 000000000000..cd45437e7bc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/routeTable.json @@ -0,0 +1,768 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + }, + "hasBgpOverride": { + "type": "boolean", + "description": "A value indicating whether this route overrides overlapping BGP routes regardless of LPM." + } + }, + "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": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "The type of the resource." + } + }, + "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the route table." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "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": "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/2020-08-01/securityPartnerProvider.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/securityPartnerProvider.json new file mode 100644 index 000000000000..0544ca14ec4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/securityPartnerProvider.json @@ -0,0 +1,441 @@ +{ + "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": "2020-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.Network/securityPartnerProviders/{securityPartnerProviderName}": { + "delete": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Delete", + "description": "Deletes the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$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/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Get", + "description": "Gets the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_CreateOrUpdate", + "description": "Creates or updates the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "Parameters supplied to the create or update Security Partner Provider operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_UpdateTags", + "description": "Updates tags of a Security Partner Provider resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update Security Partner Provider tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Security Partner Provider Tags": { + "$ref": "./examples/SecurityPartnerProviderUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_ListByResourceGroup", + "description": "Lists all Security Partner Providers 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 SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given resource group": { + "$ref": "./examples/SecurityPartnerProviderListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_List", + "description": "Gets all the Security Partner Providers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given subscription": { + "$ref": "./examples/SecurityPartnerProviderListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SecurityPartnerProviderPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Security Partner Provider resource." + }, + "securityProviderName": { + "description": "The security provider name.", + "$ref": "#/definitions/SecurityPartnerProvidersecurityProviderName" + }, + "connectionStatus": { + "readOnly": true, + "description": "The connection status with the Security Partner Provider.", + "$ref": "#/definitions/SecurityPartnerProviderConnectionStatus" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the Security Partner Provider belongs." + } + }, + "description": "Properties of the Security Partner Provider." + }, + "SecurityPartnerProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPartnerProviderPropertiesFormat", + "description": "Properties of the Security Partner Provider." + }, + "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": "Security Partner Provider resource." + }, + "SecurityPartnerProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "List of Security Partner Providers in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListSecurityPartnerProviders API service call." + }, + "SecurityPartnerProvidersecurityProviderName": { + "type": "string", + "description": "The Security Providers.", + "enum": [ + "ZScaler", + "IBoss", + "Checkpoint" + ], + "x-ms-enum": { + "name": "SecurityProviderName", + "modelAsString": true + } + }, + "SecurityPartnerProviderConnectionStatus": { + "type": "string", + "description": "The current state of the connection with Security Partner Provider.", + "readOnly": true, + "enum": [ + "Unknown", + "PartiallyConnected", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "SecurityPartnerProviderConnectionStatus", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceCommunity.json new file mode 100644 index 000000000000..95ffb50d766b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/2020-08-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..3c1eb9565389 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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_UpdateTags", + "description": "Updates tags of a 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": "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "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/2020-08-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceTags.json new file mode 100644 index 000000000000..b8de0cb13480 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/serviceTags.json @@ -0,0 +1,171 @@ +{ + "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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get next page 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/2020-08-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/usage.json new file mode 100644 index 000000000000..37fa422eb4ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/usage.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": "2020-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}/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": "The 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/2020-08-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetwork.json new file mode 100644 index 000000000000..6de777eed539 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetwork.json @@ -0,0 +1,1974 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "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": { + "readOnly": true, + "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 to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to 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." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$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 to 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 to the remote virtual network address space." + }, + "remoteBgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "The reference to the remote virtual network's Bgp Communities." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$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": { + "readOnly": true, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "extendedLocation": { + "$ref": "./network.json#/definitions/ExtendedLocation", + "description": "The extended location of the virtual network." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "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": "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." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "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": { + "readOnly": true, + "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/2020-08-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..1a0684f3f1e5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json @@ -0,0 +1,3804 @@ +{ + "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": "2020-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.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/connections/{virtualNetworkGatewayConnectionName}/getikesas": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetIkeSas", + "description": "Lists IKE Security Associations for the 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." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation GetIkeSas will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation getikesas completed on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "The operation GetIkeSas could not be completed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionIkeSa": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetIkeSas.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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.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}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "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": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.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 to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "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": { + "readOnly": true, + "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", + "LocalGateway" + ], + "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." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to 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 to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to 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 to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "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." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + }, + "virtualNetworkExtendedLocationResourceId": { + "type": "string", + "description": "MAS FIJI customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet." + }, + "extendedLocation": { + "description": "The extended location of type local virtual network gateway.", + "$ref": "./network.json#/definitions/ExtendedLocation" + } + }, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "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." + }, + "RadiusServer": { + "properties": { + "radiusServerAddress": { + "type": "string", + "description": "The address of this radius server." + }, + "radiusServerScore": { + "type": "integer", + "format": "int64", + "description": "The initial score assigned to this radius server." + }, + "radiusServerSecret": { + "type": "string", + "description": "The secret used for this radius server." + } + }, + "required": [ + "radiusServerAddress" + ], + "description": "Radius Server Settings." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to 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." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "#/definitions/RadiusServer" + }, + "description": "The radiusServers property for multiple radius server configuration." + }, + "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": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "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." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "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": "int64", + "readOnly": true, + "minimum": 0, + "maximum": 4294967295, + "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": { + "readOnly": true, + "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." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout of this connection in seconds." + }, + "connectionMode": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionMode", + "description": "The connection mode for this connection." + }, + "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." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "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." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "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": { + "readOnly": true, + "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." + }, + "connectionMode": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionMode", + "description": "The connection mode for this connection." + }, + "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": { + "readOnly": true, + "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": { + "readOnly": true, + "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 + } + }, + "VirtualNetworkGatewayConnectionMode": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "Default", + "ResponderOnly", + "InitiatorOnly" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionMode", + "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." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json new file mode 100644 index 000000000000..b1c84f3f2b5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "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": "2020-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.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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "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 to 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/2020-08-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualRouter.json new file mode 100644 index 000000000000..74c8c1e386d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "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": "2020-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.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" + } + } + }, + "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" + } + } + }, + "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": "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": 0, + "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": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "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": 0, + "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/2020-08-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualWan.json new file mode 100644 index 000000000000..10ab477b505f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/virtualWan.json @@ -0,0 +1,7756 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2020-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.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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations 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 VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations 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 VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "put": { + "operationId": "HubVirtualNetworkConnections_CreateOrUpdate", + "x-ms-examples": { + "HubVirtualNetworkConnectionPut": { + "$ref": "./examples/HubVirtualNetworkConnectionPut.json" + } + }, + "description": "Creates a hub virtual network connection if it doesn't exist else updates the existing one.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the HubVirtualNetworkConnection." + }, + { + "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 HubVirtualNetworkConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "hubVirtualNetworkConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "Parameters supplied to create or update a hub virtual network connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the hub virtual network connection created or updated.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the hub virtual network connection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "HubVirtualNetworkConnections_Delete", + "x-ms-examples": { + "HubVirtualNetworkConnectionDelete": { + "$ref": "./examples/HubVirtualNetworkConnectionDelete.json" + } + }, + "description": "Deletes 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 HubVirtualNetworkConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. HubVirtualNetworkConnection deleted." + }, + "202": { + "description": "Request received successfully. HubVirtualNetworkConnection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No HubVirtualNetworkConnection exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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/{gatewayName}/startpacketcapture": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_StartPacketCapture", + "description": "Starts packet capture on 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." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnGatewayPacketCaptureStartParameters" + }, + "description": "Vpn gateway packet capture parameters supplied to start packet capture on vpn gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation packet capture started on vpn gateway.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn gateway without filter": { + "$ref": "./examples/VpnGatewayStartPacketCapture.json" + }, + "Start packet capture on vpn gateway with filter": { + "$ref": "./examples/VpnGatewayStartPacketCaptureFilterData.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/{gatewayName}/stoppacketcapture": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_StopPacketCapture", + "description": "Stops packet capture on 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." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnGatewayPacketCaptureStopParameters" + }, + "description": "Vpn gateway packet capture parameters supplied to stop packet capture on vpn gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation packet capture stopped on vpn gateway.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Stop packet capture on vpn gateway": { + "$ref": "./examples/VpnGatewayStopPacketCapture.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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{vpnConnectionName}/startpacketcapture": { + "post": { + "operationId": "VpnConnections_StartPacketCapture", + "description": "Starts packet capture on Vpn connection 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 gateway." + }, + { + "name": "vpnConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnConnectionPacketCaptureStartParameters" + }, + "description": "Vpn Connection 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 vpn connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn connection without filter": { + "$ref": "./examples/VpnConnectionStartPacketCapture.json" + }, + "Start packet capture on vpn connection with filter": { + "$ref": "./examples/VpnConnectionStartPacketCaptureFilterData.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/{gatewayName}/vpnConnections/{vpnConnectionName}/stoppacketcapture": { + "post": { + "operationId": "VpnConnections_StopPacketCapture", + "description": "Stops packet capture on Vpn connection 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 gateway." + }, + { + "name": "vpnConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnConnectionPacketCaptureStopParameters" + }, + "description": "Vpn Connection 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 vpn connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Start packet capture on vpn connection without filter": { + "$ref": "./examples/VpnConnectionStopPacketCapture.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/{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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 vpn gateway." + }, + { + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/natRules/{natRuleName}": { + "get": { + "operationId": "NatRules_Get", + "x-ms-examples": { + "NatRuleGet": { + "$ref": "./examples/NatRuleGet.json" + } + }, + "description": "Retrieves the details of a nat ruleGet.", + "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": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "NatRules_CreateOrUpdate", + "x-ms-examples": { + "NatRulePut": { + "$ref": "./examples/NatRulePut.json" + } + }, + "description": "Creates a nat rule to a scalable vpn gateway if it doesn't exist else updates the existing nat rules.", + "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": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "NatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + }, + "description": "Parameters supplied to create or Update a Nat Rule." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "201": { + "description": "Request successful. Returns the details of the nat rule created or updated.", + "schema": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "NatRules_Delete", + "x-ms-examples": { + "NatRuleDelete": { + "$ref": "./examples/NatRuleDelete.json" + } + }, + "description": "Deletes a nat rule.", + "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": "natRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Nat Rule deleted." + }, + "202": { + "description": "Request received successfully. Nat Rule deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No nat rules exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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}/natRules": { + "get": { + "operationId": "NatRules_ListByVpnGateway", + "x-ms-examples": { + "NatRuleList": { + "$ref": "./examples/NatRuleList.json" + } + }, + "description": "Retrieves all nat rules 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 Nat rules for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnGatewayNatRulesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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 response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2SVpnGateways_Reset", + "description": "Resets the primary of the p2s vpn gateway in the specified resource group.", + "parameters": [ + { + "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" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the P2SVpnGateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetP2SVpnGateway": { + "$ref": "./examples/P2SVpnGatewayReset.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}/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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.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}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "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": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "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}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan 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 whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified 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 whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "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": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "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": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s 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/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "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 VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_UpdateTags", + "x-ms-examples": { + "ExpressRouteGatewayUpdate": { + "$ref": "./examples/ExpressRouteGatewayUpdateTags.json" + } + }, + "description": "Updates express route gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the ExpressRouteGateway." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "expressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan express route gateway tags." + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/bgpConnections/{connectionName}": { + "get": { + "operationId": "VirtualHubBgpConnection_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubBgpConnectionGet.json" + } + }, + "description": "Retrieves the details of a Virtual Hub Bgp Connection.", + "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 connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Bgp Connection retrieved.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubBgpConnection_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubBgpConnectionPut.json" + } + }, + "description": "Creates a VirtualHubBgpConnection resource if it doesn't exist else updates the existing VirtualHubBgpConnection.", + "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 connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BgpConnection" + }, + "description": "Parameters of Bgp connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the BgpConnection created or updated.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the BgpConnection created or updated.", + "schema": { + "$ref": "#/definitions/BgpConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubBgpConnection_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubBgpConnectionDelete.json" + } + }, + "description": "Deletes a VirtualHubBgpConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubBgpConnection." + }, + { + "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 connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubBgpConnection deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubBgpConnection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubBgpConnection exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/bgpConnections": { + "get": { + "operationId": "VirtualHubBgpConnections_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubBgpConnectionList.json" + } + }, + "description": "Retrieves the details of all VirtualHubBgpConnections.", + "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 VirtualHubBgpConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubBgpConnectionResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{hubName}/bgpConnections/{connectionName}/learnedRoutes": { + "post": { + "operationId": "VirtualHubBgpConnections_ListLearnedRoutes", + "description": "Retrieves a list of routes the virtual hub bgp connection has learned.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub bgp connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/PeerRouteList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VirtualRouterPeerListLearnedRoutes": { + "$ref": "./examples/VirtualRouterPeerListLearnedRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{hubName}/bgpConnections/{connectionName}/advertisedRoutes": { + "post": { + "operationId": "VirtualHubBgpConnections_ListAdvertisedRoutes", + "description": "Retrieves a list of routes the virtual hub bgp connection is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual hub bgp connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/PeerRouteList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VirtualRouterPeerListAdvertisedRoutes": { + "$ref": "./examples/VirtualRouterPeerListAdvertisedRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/ipConfigurations/{ipConfigName}": { + "get": { + "operationId": "VirtualHubIpConfiguration_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubIpConfigurationGet.json" + } + }, + "description": "Retrieves the details of a Virtual Hub Ip configuration.", + "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": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the Bgp Connection retrieved.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubIpConfiguration_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubIpConfigurationPut": { + "$ref": "./examples/VirtualHubIpConfigurationPut.json" + } + }, + "description": "Creates a VirtualHubIpConfiguration resource if it doesn't exist else updates the existing VirtualHubIpConfiguration.", + "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": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + }, + "description": "Hub Ip Configuration parameters." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the IpConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the IpConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/HubIpConfiguration" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubIpConfiguration_Delete", + "x-ms-examples": { + "VirtualHubIpConfigurationDelete": { + "$ref": "./examples/VirtualHubIpConfigurationDelete.json" + } + }, + "description": "Deletes a VirtualHubIpConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubBgpConnection." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "ipConfigName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipconfig." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubIpConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubIpConfiguration deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubIpConfiguration exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/ipConfigurations": { + "get": { + "operationId": "VirtualHubIpConfiguration_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubIpConfigurationList.json" + } + }, + "description": "Retrieves the details of all VirtualHubIpConfigurations.", + "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 VirtualHubIpConfigurations for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubIpConfigurationResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables/{routeTableName}": { + "put": { + "operationId": "HubRouteTables_CreateOrUpdate", + "x-ms-examples": { + "RouteTablePut": { + "$ref": "./examples/HubRouteTablePut.json" + } + }, + "description": "Creates a RouteTable resource if it doesn't exist else updates the existing RouteTable.", + "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": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "routeTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "Parameters supplied to create or update RouteTable." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the RouteTable created or updated.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "operationId": "HubRouteTables_Get", + "x-ms-examples": { + "RouteTableGet": { + "$ref": "./examples/HubRouteTableGet.json" + } + }, + "description": "Retrieves the details of a RouteTable.", + "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": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the RouteTable retrieved.", + "schema": { + "$ref": "#/definitions/HubRouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "HubRouteTables_Delete", + "x-ms-examples": { + "RouteTableDelete": { + "$ref": "./examples/HubRouteTableDelete.json" + } + }, + "description": "Deletes a RouteTable.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the RouteTable." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the RouteTable." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. RouteTable deleted." + }, + "202": { + "description": "Request received successfully. RouteTable deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No RouteTables exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubRouteTables": { + "get": { + "operationId": "HubRouteTables_List", + "x-ms-examples": { + "RouteTableList": { + "$ref": "./examples/HubRouteTableList.json" + } + }, + "description": "Retrieves the details of all RouteTables.", + "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 RouteTables for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubRouteTablesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/effectiveRoutes": { + "post": { + "operationId": "VirtualHubs_GetEffectiveVirtualHubRoutes", + "x-ms-examples": { + "Effective Routes for the Virtual Hub": { + "$ref": "./examples/EffectiveRoutesListForVirtualHub.json" + }, + "Effective Routes for a Route Table resource": { + "$ref": "./examples/EffectiveRoutesListForRouteTable.json" + }, + "Effective Routes for a Connection resource": { + "$ref": "./examples/EffectiveRoutesListForConnection.json" + } + }, + "description": "Gets the effective routes configured for the Virtual Hub resource or the specified resource .", + "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": "effectiveRoutesParameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/EffectiveRoutesParameters" + }, + "description": "Parameters supplied to get the effective routes for a specific resource." + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for the effective routes list." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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." + }, + "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" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "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": { + "readOnly": true, + "$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" + } + }, + "o365Policy": { + "readOnly": false, + "description": "Office365 Policy.", + "$ref": "#/definitions/O365PolicyProperties" + } + }, + "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." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "securityPartnerProvider": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The securityPartnerProvider associated with this VirtualHub." + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + }, + "routingState": { + "$ref": "#/definitions/RoutingState", + "description": "The routing state." + }, + "bgpConnections": { + "type": "array", + "readOnly": true, + "description": "List of references to Bgp Connections.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "ipConfigurations": { + "type": "array", + "readOnly": true, + "description": "List of references to IpConfigurations.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control transit for VirtualRouter hub." + } + }, + "description": "Parameters for VirtualHub." + }, + "RoutingState": { + "type": "string", + "description": "The current routing state of the VirtualHub.", + "readOnly": true, + "enum": [ + "None", + "Provisioned", + "Provisioning", + "Failed" + ], + "x-ms-enum": { + "name": "RoutingState", + "modelAsString": true + } + }, + "BgpConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpConnectionProperties", + "description": "The properties of the Bgp connections." + }, + "name": { + "type": "string", + "description": "Name of the connection." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Connection type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Appliance Site resource." + }, + "BgpConnectionProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "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" + }, + "connectionState": { + "type": "string", + "description": "The current state of the VirtualHub to Peer.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubBgpConnectionStatus", + "modelAsString": true + } + } + }, + "description": "Properties of the bgp connection." + }, + "PeerRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The peer'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": "Peer routing details." + }, + "PeerRouteList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerRoute" + }, + "description": "List of peer routes." + } + }, + "description": "List of virtual router peer routes." + }, + "HubIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubIPConfigurationPropertiesFormat", + "description": "The properties of the Virtual Hub IPConfigurations." + }, + "name": { + "type": "string", + "description": "Name of the Ip Configuration." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Ipconfiguration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IpConfigurations." + }, + "HubIPConfigurationPropertiesFormat": { + "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." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "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": { + "readOnly": true, + "$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." + }, + "ipConfigurations": { + "type": "array", + "readOnly": true, + "description": "List of all IPs configured on the gateway.", + "items": { + "$ref": "#/definitions/VpnGatewayIpConfiguration" + } + }, + "isRoutingPreferenceInternet": { + "type": "boolean", + "description": "Enable Routing Preference property for the Public IP Interface of the VpnGateway." + }, + "natRules": { + "type": "array", + "description": "List of all the nat Rules associated with the gateway.", + "items": { + "$ref": "#/definitions/VpnGatewayNatRule" + } + } + }, + "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." + }, + "VpnGatewayIpConfiguration": { + "description": "IP Configuration of a VPN Gateway Resource.", + "properties": { + "id": { + "type": "string", + "description": "The identifier of the IP configuration for a VPN Gateway." + }, + "publicIpAddress": { + "type": "string", + "description": "The public IP address of this IP configuration." + }, + "privateIpAddress": { + "type": "string", + "description": "The private IP address of this IP configuration." + } + } + }, + "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." + } + } + }, + "VpnNatRuleMapping": { + "properties": { + "addressSpace": { + "type": "string", + "description": "Address space for Vpn NatRule mapping." + } + }, + "description": "Vpn NatRule mapping." + }, + "VpnGatewayNatRuleProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT Rule resource." + }, + "type": { + "type": "string", + "description": "The type of NAT rule for VPN NAT.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "VpnNatRuleType", + "modelAsString": true + } + }, + "mode": { + "type": "string", + "description": "The Source NAT direction of a VPN NAT.", + "enum": [ + "EgressSnat", + "IngressSnat" + ], + "x-ms-enum": { + "name": "VpnNatRuleMode", + "modelAsString": true + } + }, + "internalMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address internal mapping for NAT." + }, + "externalMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnNatRuleMapping" + }, + "description": "The private IP address external mapping for NAT." + }, + "ipConfigurationId": { + "type": "string", + "description": "The IP Configuration ID this NAT rule applies to." + }, + "egressVpnSiteLinkConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of egress VpnSiteLinkConnections." + }, + "ingressVpnSiteLinkConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of ingress VpnSiteLinkConnections." + } + }, + "description": "Parameters for VpnGatewayNatRule." + }, + "VpnGatewayNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayNatRuleProperties", + "description": "Properties of the VpnGateway NAT 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", + "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": "VpnGatewayNatRule Resource." + }, + "ListVpnGatewayNatRulesResult": { + "description": "Result of the request to list all nat rules to a virtual wan vpn gateway. It contains a list of Nat rules and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGatewayNatRule" + }, + "description": "List of Nat Rules." + }, + "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." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "DPD timeout in seconds 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": { + "readOnly": true, + "$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" + } + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + } + }, + "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." + } + } + }, + "VpnConnectionPacketCaptureStartParameters": { + "description": "Vpn Connection packet capture parameters supplied to start packet capture on gateway connection.", + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters on vpn connection." + }, + "linkConnectionNames": { + "type": "array", + "description": "List of site link connection names.", + "items": { + "type": "string" + } + } + } + }, + "VpnConnectionPacketCaptureStopParameters": { + "description": "Vpn Connection packet capture parameters supplied to stop packet capture on gateway connection.", + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on vpn connection." + }, + "linkConnectionNames": { + "type": "array", + "description": "List of site link connection names.", + "items": { + "type": "string" + } + } + } + }, + "VpnGatewayPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters on vpn gateway." + } + }, + "description": "Start packet capture parameters." + }, + "VpnGatewayPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on vpn gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "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." + }, + "vpnLinkConnectionMode": { + "type": "string", + "description": "Vpn link connection mode.", + "enum": [ + "Default", + "ResponderOnly", + "InitiatorOnly" + ], + "x-ms-enum": { + "name": "VpnLinkConnectionMode", + "modelAsString": true + } + }, + "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": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + }, + "ingressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of ingress NatRules." + }, + "egressNatRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of egress NatRules." + } + }, + "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": "Deprecated: VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Deprecated: Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "provisioningState": { + "readOnly": true, + "$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." + } + } + }, + "HubRouteTableProperties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/HubRoute" + } + }, + "labels": { + "type": "array", + "description": "List of labels associated with this route table.", + "items": { + "type": "string" + } + }, + "associatedConnections": { + "type": "array", + "description": "List of all connections associated with this route table.", + "readOnly": true, + "items": { + "type": "string" + } + }, + "propagatingConnections": { + "type": "array", + "description": "List of all connections that advertise to this route table.", + "readOnly": true, + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the RouteTable resource." + } + }, + "description": "Parameters for RouteTable." + }, + "HubRouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubRouteTableProperties", + "description": "Properties of the RouteTable resource." + }, + "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": "RouteTable resource in a virtual hub." + }, + "HubRoute": { + "required": [ + "name", + "destinationType", + "destinations", + "nextHopType", + "nextHop" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the Route that is unique within a RouteTable. This name can be used to access this route." + }, + "destinationType": { + "type": "string", + "description": "The type of destinations (eg: CIDR, ResourceId, Service)." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hop (eg: ResourceId)." + }, + "nextHop": { + "type": "string", + "description": "NextHop resource ID." + } + }, + "description": "RouteTable route." + }, + "ListHubRouteTablesResult": { + "description": "List of RouteTables and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubRouteTable" + }, + "description": "List of RouteTables." + }, + "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 + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/RadiusServer" + }, + "description": "Multiple Radius Server configuration for VpnServerConfiguration." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "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/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "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." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$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." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + }, + "customDnsServers": { + "type": "array", + "description": "List of all customer specified DNS servers IP addresses.", + "items": { + "type": "string" + } + }, + "isRoutingPreferenceInternet": { + "type": "boolean", + "description": "Enable Routing Preference property for the Public IP Interface of the P2SVpnGateway." + } + }, + "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." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Flag indicating whether the enable internet security flag is turned on for the P2S Connections or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection 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": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "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": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + }, + "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": { + "readOnly": true, + "$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": { + "readOnly": true, + "$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." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Enable FastPath to vWan Firewall hub." + }, + "routingConfiguration": { + "$ref": "#/definitions/RoutingConfiguration", + "description": "The Routing Configuration indicating the associated and propagated route tables on this 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." + }, + "ListVirtualHubBgpConnectionResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpConnection" + }, + "description": "The list of VirtualHubBgpConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "VirtualHubBgpConnections list." + }, + "ListVirtualHubIpConfigurationResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubIpConfiguration" + }, + "description": "The list of VirtualHubIpConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "VirtualHubIpConfigurations list." + }, + "RoutingConfiguration": { + "description": "Routing Configuration indicating the associated and propagated route tables for this connection.", + "properties": { + "associatedRouteTable": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The resource id RouteTable associated with this RoutingConfiguration." + }, + "propagatedRouteTables": { + "$ref": "#/definitions/PropagatedRouteTable", + "description": "The list of RouteTables to advertise the routes to." + }, + "vnetRoutes": { + "$ref": "#/definitions/VnetRoute", + "description": "List of routes that control routing from VirtualHub into a virtual network connection." + } + } + }, + "PropagatedRouteTable": { + "description": "The list of RouteTables to advertise the routes to.", + "properties": { + "labels": { + "type": "array", + "description": "The list of labels.", + "items": { + "type": "string" + } + }, + "ids": { + "type": "array", + "description": "The list of resource ids of all the RouteTables.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + } + }, + "VnetRoute": { + "description": "List of routes that control routing from VirtualHub into a virtual network connection.", + "properties": { + "staticRoutes": { + "type": "array", + "description": "List of all Static Routes.", + "items": { + "$ref": "#/definitions/StaticRoute" + } + } + } + }, + "StaticRoute": { + "description": "List of all Static Routes.", + "properties": { + "name": { + "type": "string", + "description": "The name of the StaticRoute that is unique within a VnetRoute." + }, + "addressPrefixes": { + "type": "array", + "description": "List of all address prefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "The ip address of the next hop." + } + } + }, + "VirtualHubEffectiveRouteList": { + "description": "EffectiveRoutes List.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubEffectiveRoute" + }, + "description": "The list of effective routes configured on the virtual hub or the specified resource." + } + } + }, + "VirtualHubEffectiveRoute": { + "description": "The effective route configured on the virtual hub or specified resource.", + "properties": { + "addressPrefixes": { + "description": "The list of address prefixes.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextHops": { + "description": "The list of next hops.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextHopType": { + "description": "The type of the next hop.", + "type": "string" + }, + "asPath": { + "description": "The ASPath of this route.", + "type": "string" + }, + "routeOrigin": { + "description": "The origin of this route.", + "type": "string" + } + } + }, + "EffectiveRoutesParameters": { + "description": "The parameters specifying the resource whose effective routes are being requested.", + "properties": { + "resourceId": { + "type": "string", + "description": "The resource whose effective routes are being requested." + }, + "virtualWanResourceType": { + "type": "string", + "description": "The type of the specified resource like RouteTable, ExpressRouteConnection, HubVirtualNetworkConnection, VpnConnection and P2SConnection." + } + } + }, + "O365PolicyProperties": { + "properties": { + "breakOutCategories": { + "readOnly": false, + "description": "Office365 breakout categories.", + "$ref": "#/definitions/O365BreakOutCategoryPolicies" + } + }, + "description": "The Office365 breakout policy." + }, + "O365BreakOutCategoryPolicies": { + "properties": { + "allow": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control allow category." + }, + "optimize": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control optimize category." + }, + "default": { + "type": "boolean", + "readOnly": false, + "description": "Flag to control default category." + } + }, + "description": "Office365 breakout categories." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json new file mode 100644 index 000000000000..7290df14ec45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-08-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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "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." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "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": { + "readOnly": true, + "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.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The 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 + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "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." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "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." + } + } + }, + "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": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "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": "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": "The selector of match variable.", + "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": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether 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" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "The managed rule group to override.", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index 9da6602627a6..d5469861ae36 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,72 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2020-07 +tag: package-2020-08 ``` +### Tag: package-2020-08 + +These settings apply only when `--tag=package-2020-08` is specified on the command line. + +```yaml $(tag) == 'package-2020-08' +input-file: + - Microsoft.Network/stable/2020-08-01/applicationGateway.json + - Microsoft.Network/stable/2020-08-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2020-08-01/availableDelegations.json + - Microsoft.Network/stable/2020-08-01/availableServiceAliases.json + - Microsoft.Network/stable/2020-08-01/azureFirewall.json + - Microsoft.Network/stable/2020-08-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2020-08-01/azureWebCategory.json + - Microsoft.Network/stable/2020-08-01/bastionHost.json + - Microsoft.Network/stable/2020-08-01/checkDnsAvailability.json + - Microsoft.Network/stable/2020-08-01/customIpPrefix.json + - Microsoft.Network/stable/2020-08-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2020-08-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2020-08-01/dscpConfiguration.json + - Microsoft.Network/stable/2020-08-01/endpointService.json + - Microsoft.Network/stable/2020-08-01/expressRouteCircuit.json + - Microsoft.Network/stable/2020-08-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2020-08-01/expressRoutePort.json + - Microsoft.Network/stable/2020-08-01/firewallPolicy.json + - Microsoft.Network/stable/2020-08-01/ipAllocation.json + - Microsoft.Network/stable/2020-08-01/ipGroups.json + - Microsoft.Network/stable/2020-08-01/loadBalancer.json + - Microsoft.Network/stable/2020-08-01/natGateway.json + - Microsoft.Network/stable/2020-08-01/network.json + - Microsoft.Network/stable/2020-08-01/networkInterface.json + - Microsoft.Network/stable/2020-08-01/networkProfile.json + - Microsoft.Network/stable/2020-08-01/networkSecurityGroup.json + - Microsoft.Network/stable/2020-08-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2020-08-01/networkWatcher.json + - Microsoft.Network/stable/2020-08-01/operation.json + - Microsoft.Network/stable/2020-08-01/privateEndpoint.json + - Microsoft.Network/stable/2020-08-01/privateLinkService.json + - Microsoft.Network/stable/2020-08-01/publicIpAddress.json + - Microsoft.Network/stable/2020-08-01/publicIpPrefix.json + - Microsoft.Network/stable/2020-08-01/routeFilter.json + - Microsoft.Network/stable/2020-08-01/routeTable.json + - Microsoft.Network/stable/2020-08-01/securityPartnerProvider.json + - Microsoft.Network/stable/2020-08-01/serviceCommunity.json + - Microsoft.Network/stable/2020-08-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2020-08-01/serviceTags.json + - Microsoft.Network/stable/2020-08-01/usage.json + - Microsoft.Network/stable/2020-08-01/virtualNetwork.json + - Microsoft.Network/stable/2020-08-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2020-08-01/virtualNetworkTap.json + - Microsoft.Network/stable/2020-08-01/virtualRouter.json + - Microsoft.Network/stable/2020-08-01/virtualWan.json + - Microsoft.Network/stable/2020-08-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2020-08-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-08-01/webapplicationfirewall.json + - Microsoft.Network/stable/2020-08-01/cloudServiceNetworkInterface.json + - Microsoft.Network/stable/2020-08-01/cloudServicePublicIpAddress.json +``` ### Tag: package-2020-07 These settings apply only when `--tag=package-2020-07` is specified on the command line. -```yaml $(tag) == 'package-2020-07' +``` yaml $(tag) == 'package-2020-07' input-file: - Microsoft.Network/stable/2020-07-01/applicationGateway.json - Microsoft.Network/stable/2020-07-01/applicationSecurityGroup.json @@ -87,6 +144,7 @@ input-file: - Microsoft.Network/stable/2020-07-01/vmssPublicIpAddress.json - Microsoft.Network/stable/2020-07-01/webapplicationfirewall.json ``` + ### Tag: package-2020-06 These settings apply only when `--tag=package-2020-06` is specified on the command line. @@ -1757,4 +1815,3 @@ See configuration in [readme.java.md](./readme.java.md) ## AzureResourceSchema See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -